我正在處理一個我收到的Python文件,並且在Python中進行初始化時,我看到一個包含多種變量的類。目前尚不清楚對我有什麼邏輯,當我定義的屬性,我應該遵循和初始化哪些與否,下面的代碼的一部分:瞭解Python中的__init__
class Simulator(object):
colors = {'gray' : (155, 155, 155)}
def __init__(self, env, size=None, update_delay=2.0, display=True):
self.env = env
self.size = size if size is not None else self.env.grid_size[0]
self.road_width = 44
self.bg_color = self.colors['gray']
self.quit = False
self.start_time = None
self.current_time = 0.0
if self.display:
try:
self.pygame = importlib.import_module('pygame')
self.pygame.init()
self.screen = self.pygame.display.set_mode(self.size)
例如:
env
:它是在圓括號中聲明,然後初始化 - >清除size
:它被聲明,但初始化時它使用self.env.grid_size[0]
。env
如何可以有一個屬性grid_size
它沒有被定義或初始化?road_with
:爲什麼在括號中沒有提及?我只想把road_with
放在圓括號中,默認值爲44bg_color
:爲什麼它沒有在括號中定義?爲什麼
quit
,start_time
,current_time
未在括號中定義?它是如何工作來聲明但不是初始化一個
self.pygame
這是與一個模塊,這是以前沒有在代碼中調用?它是如何工作的,用
self.pygame.init()
啓動另一個模塊?
你使用過除python以外的任何語言嗎? –