我有一個類,我傳的文件清單,並在一個方法,它創建這些文件的列表:錯誤類功能 - 恰恰1參數
class Copy(object):
def __init__(self, files_to_copy):
self.files_to_copy = files_to_copy
在這裏,它會創建一個文件列表:
def create_list_of_files(self):
mylist = []
with open(self.files_to_copy) as stream:
for line in stream:
mylist.append(line.strip())
return mylist
現在,我嘗試訪問該方法的另一種方法在類:
def copy_files(self):
t = create_list_of_files()
for i in t:
print i
然後我跑ŧ他以下if __name__ == "__main__"
下:
a = Copy()
a.copy_files()
此拋出:
TypeError: create_list_of_files() takes exactly 1 argument (0 given)
現在用的方法錯了嗎?
'self.create_list_of_files()'< - 'self'是隱含的第一個參數。 –
你得到這個錯誤表明你沒有正確縮進你的代碼(如果你不使用self,你將不能引用'create_list_of_files')。確保'create_list_of_files'縮進到與'__init__'相同的水平。 – Dunes
[類中的Python調用函數]的可能重複(http://stackoverflow.com/questions/5615648/python-call-function-within-class) –