Я сижу над этим целый день и уже немного устал, так что извините, что я краток.
Я новичок в питоне.
Я только что переписал работающую программу на кучу функций в классе, и все испортилось. Я не знаю, я ли это, но я очень удивлен, что не смог найти учебник для начинающих о том, как обращаться с классами в Интернете, поэтому у меня есть несколько вопросов.
Прежде всего, в секции __init__
класса я объявил набор переменных с помощью self.variable=something
.
Правильно ли, что я должен иметь возможность доступа/изменения этих переменных в каждой функции класса, используя self.variable
в этой функции? Другими словами, объявив self.variable
, я сделал эти переменные глобальными переменными в области видимости класса, верно?
Если нет, то как мне вести себя?
Во-вторых , как мне правильно передать аргументы в класс? Некоторые примеры кода были бы крутыми.
В-третьих , как мне вызвать функцию класса вне области действия класса? Некоторые примеры кода были бы крутыми.
Во-первых, , как мне создать экземпляр class INITIALCLASS
в другом class OTHERCLASS
, передавая переменные из OTHERCLASS
в INITIALCLASS
? Некоторые примеры кода были бы крутыми.
Я хочу вызвать функцию из OTHERCLASS
с аргументами из INITIALCLASS
. Что я сделал до сих пор.
class OTHERCLASS():
def __init__(self,variable1,variable2,variable3):
self.variable1=variable1
self.variable2=variable2
self.variable3=variable3
def someotherfunction(self):
something=somecode(using self.variable3)
self.variable2.append(something)
print self.variable2
def somemorefunctions(self):
self.variable2.append(variable1)
class INITIALCLASS():
def __init__(self):
self.variable1=value1
self.variable2=[]
self.variable3=''
self.DoIt=OTHERCLASS(variable1,variable2,variable3)
def somefunction(self):
variable3=Somecode
#tried this
self.DoIt.someotherfunctions()
#and this
DoIt.someotherfunctions()
Я явно не понимал, как передавать переменные в классы или как обрабатывать self
, когда их использовать, а когда нет. Я, наверное, тоже не понял, как правильно создать экземпляр класса. В общем, я не понимал механики классов, поэтому, пожалуйста, помогите мне и объясните мне это, как будто я понятия не имею (, чего, кажется, нет ).Или укажите мне подробное видео или читаемый учебник.
Все, что я нашел в Интернете, это очень простые примеры, которые мне не очень помогли. Или просто очень короткие определения классов и экземпляров методов классов и т. д.
Я могу отправить вам свой исходный код, если хотите, но он довольно длинный.