在蟒蛇,它是壞的形式寫一個__init__
定義,如:在初始化的變量是對函數的調用返回一個字符串Python類__init__佈局?
class someFileType(object):
def __init__(self, path):
self.path = path
self.filename = self.getFilename()
self.client = self.getClient()
self.date = self.getDate()
self.title = self.getTitle()
self.filetype = self.getFiletype()
def getFilename(self):
'''Returns entire file name without extension'''
filename = os.path.basename(self.path)
filename = os.path.splitext(filename)
filename = filename[0]
return filename
def getClient(self):
'''Returns client name associated with file'''
client = self.filename.split()
client = client[1] # Assuming filename is formatted "date client - docTitle"
return client
?或者它被認爲是懶惰的編碼?無論何時我想引用文件的某些方面,主要是爲了將something.filetype
當作something.getFiletype()
來救我。
此代碼是按客戶端將文件分類到文件夾中,然後通過文檔類型和基於文件名中數據的其他操作。
完全沒問題。即使更容易閱讀。 –
對我來說看起來很好,除非你的一個getFoo()函數碰巧需要很長時間,在這種情況下,你可能需要推遲它,直到它實際需要。 – Aya
我寧願緩存@property。 – kay