1
在蟒蛇,如果我想從多個文件讀取,可我做類似下面?:文件在列表
files = [input1.txt, input2.txt, input3.txt]
for i in files:
f = open('i', 'r')
f.readlines()
f.close()
在蟒蛇,如果我想從多個文件讀取,可我做類似下面?:文件在列表
files = [input1.txt, input2.txt, input3.txt]
for i in files:
f = open('i', 'r')
f.readlines()
f.close()
是的......但是,你應該處理的readlines()
返回值。
爲了正確地做到這一點,你應該這樣做:
files=['input1.txt','input2.txt','input3.txt']
for i in files:
f=open(str(i),'r')
f.readlines()
f.close()
這是因爲你正在做的方式,讓蟒蛇嘗試在打開'i'
代替i
的價值循環。
但是,這種方式並不是最佳的,但它是最簡單的解決方案。
爲什麼str(i)? f.readlines()的結果會怎麼樣? –
您使用str(i),因爲您正在使用for循環中的變量i,而不是從未更改的字符串i。但是,如果文件列表中的所有內容都是一個字符串,那麼只需將我放在沒有str() –
如果列表是一個文件列表,它可能意味着是字符串,因此不需要'str'。而且我不確定我看到「i'永遠不會改變」的意思。 –