2013-06-01 39 views
1

希望這將是一個快速解決方案。我擔心我對Python的瞭解不夠多,不知道爲什麼我有編譯器語法錯誤。該代碼如下,編譯器有一個問題,與「爲」在代碼的行語句:創建Python字典:語法問題

vocab_counter = {vocabLine.strip().lower(): 0 for vocabLine in vocabOutFile} 

vocabLine是文本從.txt文件一行,並vocabOutFile是它的文件閱讀。我試圖在.txt文檔中創建一個單詞列表,並在每個單詞上增加一個計數器,因爲它們是在單獨的文檔中找到的。

那麼,爲什麼會出現語法錯誤?

謝謝大家的幫助,我真的很感激!

+3

python版本? –

+1

請顯示完整的錯誤信息。 – BrenBarn

+0

錯誤的python版本,我不知道它。我被制服了! – FeralShadow

回答

2

對不起。我發現我試圖做的只是在python 2.7或更高版本中可用。對於Python 2.6我不得不將代碼更改爲:

vocab_counter = dict((vocabLine.strip().lower(), 0) 
        for vocabLine in vocabOutFile) 

感謝您的時間!

+5

忘記'dict'? –

+0

顯然是舊的Python版本。 – FeralShadow

+1

@FeralShadow您在這裏發佈的代碼會創建一個生成器表達式,而不是字典。 –