![](/img/trans.png)
[英]Creating objects with classes, why do I need __init__(self, args):?
[英]Why do classes need arguments (argument) if I can simply add as many self.agrument after the __init__ as I need?
就像在下面的示例中一樣,我的類只包含默認的 self,其他所有內容都添加到 init 方法下。
class Settings():
def __init__(self):
'''screen settings'''
self.screen_width = 1200
self.screen_height = 800
self.bg_color = (230,230,230)
它們不是您的類的參數,因為它們是類變量,可以由該類中的其他函數訪問,但不能在該類之外使用,如果您想從要使用的參數中創建變量將是
def __init__(self, fname, lname):
self.firstname = fname
self.lastname = lname
它們可以稱為相同的事物,但也可以稱為不同的事物。 如果您想從該類中的另一個函數訪問它們,您可以這樣做
def __init__(self, name):
self.name = name
def print_name(self):
print(self.name)
你有self.
的原因self.
為了更容易管理變量和跟蹤, self
參數被傳遞給第二個函數,因此它能夠使用聲明為類變量的變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.