检查单词是否在字典中

时间:2013-10-10 18:41:21

标签: python dictionary

我有一个带键/值对的.csv文件。我试图通过调用我的字典检查给定的密钥是否在文件中,但我有一个我不太明白的错误。任何帮助表示赞赏!

  def Dictionary(x):

     wDictionary = open('file.csv', 'r')
     for line in wDictionary:
           mylist = line.split(',')


  def main():

     x = input('enter text:')
     cd = Dictionary(x)
     if x in cd:
          print('yes')

  main()

错误:

Traceback (most recent call last):
     File "7.py", line 15, in <module>
        main()
     File "7.py", line 12, in main
        if x in cd:
TypeError: argument of type 'NoneType' is not iterable

2 个答案:

答案 0 :(得分:2)

由于您未从Dictionary(x)返回,cd设置为None。因此错误。

一堆其他问题:我会让你自己解决这个问题。

def Dictionary(x):

     wDictionary = open('file.csv', 'r')
     mylist = []
     for line in wDictionary.readlines():
           mylist.append(line.split(','))
     return mylist


 def main():

     x = input('enter text:')
     cd = Dictionary(x)
     for line in cd:
         if x in line:
             print('yes')

 main()

此外,您不需要将参数x发送到函数中,因为您没有对它执行任何操作。

答案 1 :(得分:1)

你没有在Dictionary(x)中返回任何内容,因此当你要求它迭代cd时,Python不知道该怎么做。