TypeError: аргумент типа «NoneType» не является итерируемым python

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

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()

person Aaron Haynos    schedule 23.09.2014    source источник
comment
Является ли возврат в CreateDictionary() таким отступом? Если это так, CreateDictionary вернется после первой строки.   -  person AMADANON Inc.    schedule 23.09.2014
comment
И он вернет словарь только в том случае, если есть первая строка; если нет, он упадет с конца функции и вернет None.   -  person user2357112 supports Monica    schedule 23.09.2014


Ответы (1)


dictonary = {}

должно быть

dictionary = {}

обратите внимание на написание

person user1269942    schedule 23.09.2014