2016-01-20 75 views
-1

嗨,大家好我希望能夠通過單詞的列表變成一個循環,如何才能讓下面的工作代碼蟒蛇如何數組值傳遞到文件打開請求

list = ['word1','word2','word3'] 
for x in list 
     with open('folder/{x}.txt') as fin: 
     do something() 
+0

你在這裏想達到什麼目的?爲什麼命名你的變量'list'? – styvane

+0

「將單詞列表傳遞給'for'循環」是什麼意思?你不會把東西傳入循環。 「工作」意味着什麼?您想要如何處理您發佈的(無效)代碼,以及您卡在哪裏? – kindall

回答

5

這應該這樣做:

word_list = ['word1','word2','word3'] 
for x in word_list: 
    with open('folder/{x}.txt'.format(x=x)) as fin: 
     do something() 

兩個改變我做:

  • 後添加一個被遺忘的結腸聲明
  • .format(x=x)添加到字符串。這是python的string interpolation機制
+0

完美!非常感謝,在時間限制通過時打上正確的標記 –

+2

好奇的是,爲什麼這會被低估 - 似乎回答了這個問題。 – AChampion

+1

嗯...有2個downvotes ...可能是因爲這是一個代碼唯一的答案。 rtemperv,代碼唯一的答案(意味着答案中只有一個(工作)代碼)並不是非常有用。請解釋「你的代碼如何工作以及爲什麼工作,以及爲什麼OP的代碼不工作(有時)」。 –

-1

您錯過了一個冒號。條款with也需要一些工作。以下是如何修復for循環末尾的冒號部分:

list = ['word1','word2','word3'] 
for x in list: 
    print(x)