我在寫一段代碼來遞歸處理* .py文件。代碼塊的計算如下:遞歸似乎不能在Python中工作
class FileProcessor(object):
def convert(self,file_path):
if os.path.isdir(file_path):
""" If the path is a directory,then process it recursively
untill a file is met"""
dir_list=os.listdir(file_path)
print("Now Processing Directory:",file_path)
i=1
for temp_dir in dir_list:
print(i,":",temp_dir)
i=i+1
self.convert(temp_dir)
else:
""" if the path is not a directory"""
""" TODO something meaningful """
if __name__ == '__main__':
tempObj=FileProcessor()
tempObj.convert(sys.argv[1])
當我運行與作爲參數的目錄路徑的腳本,它只運行目錄的第一層,該行:
self.convert(temp_dir)
似乎從來沒有得到調用。我正在使用Python 3.5。
有一個更好的方式來BTW做到這一點。 ['os.walk'](https://docs.python.org/3/library/os.html#os.walk) –