2014-09-23 24 views
1

Я продолжаю получать эту ошибку за 20 ", если ntext [x] в словаре:". Программа конвертирует текстовые сообщения на английский язык.TypeError: аргумент типа «NoneType» не является итерируемым python

import csv 
def CreateDictionary(): 
    fo = open("textToEnglish2014.csv" , "r") 
    dictonary = {} 
    reader = csv.reader(fo) 
    for row in reader: 
     dictionary[row[0]] = row[1] 
     return dictionary 

def main(): 
    dictionary = CreateDictionary() 
    y = "y" 
    while y == "y": 
     text = input("Enter text to which you would like conversion: ") 
     text = text.lower() 
     ntext = text.split(" ") 
     new_text = "" 
     x = 0 
     while x < len(ntext): 
      if ntext[x] in dictionary: 
       new_text = new_text + dictionary[ntext[x]] + " " 
      else: 
       export = export + "NF " 
      x += 1 
     print (new_text) 
     y = input("Continue conversion? y or q ") 

main() 
+3

ли "возвращение" в CreateDictionary() предназначены для отступа, как это? Если это так, CreateDictionary вернется после первой строки. –

+0

И он вернет словарь только в том случае, если есть первая строка; если этого не произойдет, он упадет с конца функции и вернет «Нет». – user2357112

ответ

2
dictonary = {} 

должен быть

dictionary = {} 

примечание правописание

Смежные вопросы