Python 我需要一些帮助在列表中查找列表中的内容(以及其他内容)

Python 我需要一些帮助在列表中查找列表中的内容(以及其他内容),python,list,machine-learning,artificial-intelligence,Python,List,Machine Learning,Artificial Intelligence,我14岁了(实际上不到一个小时就15岁了:D),我真的在为此奋斗。 我正在尝试创建一个非常基本的学习AI。目前,我只是在尝试建立它的框架,帮助它学习新单词,所以它有点混乱和粗糙。 无论如何,这个想法是,当它不理解一个单词时,它会询问它是什么,然后如果用户提供的同义词被识别,它会将其添加到该同义词的同义词列表中。 不幸的是,我不断遇到错误和问题,现在我只是感到困惑。 请帮我看一下。哦,我为它糟糕的结构和糟糕的一切道歉: #standard dictionary dictionary = {1:"

我14岁了(实际上不到一个小时就15岁了:D),我真的在为此奋斗。 我正在尝试创建一个非常基本的学习AI。目前,我只是在尝试建立它的框架,帮助它学习新单词,所以它有点混乱和粗糙。 无论如何,这个想法是,当它不理解一个单词时,它会询问它是什么,然后如果用户提供的同义词被识别,它会将其添加到该同义词的同义词列表中。 不幸的是,我不断遇到错误和问题,现在我只是感到困惑。 请帮我看一下。哦,我为它糟糕的结构和糟糕的一切道歉:

#standard dictionary

dictionary = {1:"hi",2:"yes",3:"no"}
wordvariations=[[],["yes,Yes"],["no,No"]]


#variables

breaker=0
response = "error"
success=0

#import

from random import choice

#word types

question_words= {"who","what","where","why","when","which","how","whom","Who","What","Where","Why","When","Which","How","Whom"}

#What does that mean?

def what_does_that_mean(new_word):
    link_word = input("Sorry, I don't know what that means. Could you tell me? It means the same as the word...\n")
    success=0
    for current_dict in wordvariations:
        if link_word in current_dict == TRUE:
            print ("Thanks")
            current_dict.append[new_word]
            success=1
            break
    if success == 0:
        tryagain = input("Sorry, I don't know what that means either. Would you like to try again? (y/n) \n")
        if input == "y":
            testword= input("Give me another word \n")
            what_does_this_mean(testword)
        else: return


#First start

possible_greeting =input("Hey. Nice to meet you.\n")
split_greeting = possible_greeting.split()    

for each_word in split_greeting:
    if each_word in question_words:
        response = "Sorry, I can't answer questions yet"
        breaker=1
        break
    elif (each_word == ("too")):
        response = "Thanks"
        breaker=1
        break
    else: pass

if breaker ==1:
    pass
else:
    yes_no = input("Is that how you usually greet people?\n")
    if yes_no == "yes":
        wordvariations[1].append(possible_greeting)
    elif yes_no=="no":
        new_greeting = input("Ok then. How do you often greet people?")
        wordvariations[1].append(new_greeting)
    else:
        what_does_that_mean(yes_no)

#print (response)


#Other stuff

current_greeting = choice(wordvariations[1])
print (current_greeting)
如果任何缩进看起来真的不对劲,我可能把它放错了问题框

我真的很感激这里的任何帮助——我觉得我在兜圈子。目前,搜索似乎不起作用,因为它从未找到结果。这是最需要修复的单词查找功能区域,其余的只是一种启动脚本,可以让事情继续进行。试着忽略那些完全无用的东西,它们只是为了以后


提前感谢:)

祝贺你,杰克:D

有几件事会让你更容易

>>> 'How'.lower()
'how'
if word.lower() in word_list: # where word_list contains lower case only
因此,您可以随时将单词的大写/小写版本改为小写

if link_word in current_dir == TRUE:
可以简单地写出来

if link_word in current_dir:
也可以使用布尔值(真/假)代替整数

success=1
可以改为
success=True
,有布尔值的话,如果成功了,你可以用
检查它们

(如果您喜欢,实际上有一个
for…else
,在没有success变量的情况下,它完全可以完成您想要做的事情)

current\u dict.append[newword]
应该是
current\u dict.append([newword])
current\u dict.append(newword)

调用变量
input
时也出现了一些失误,比如
if-input='y'

我也知道你在运行Python2还是Python3?在python 2中,输入(“?”)
不是您想要的(它是
原始输入(“?”)

我想你会希望问候语部分的
wordvariations
是你自己的。比如称它为问候语。(这样你就不必一直
…[1]


你写的是
这是什么意思
而不是
这是什么意思

你能举一个例子,说明你会用它进行交互,以及你希望它做什么吗?“是的,是的”的预期用途是什么?结构看起来好像在工作(但可能是我累了)谢谢。我做了你建议的更改,加上一些缺失的语音标记,完全修复了它。非常感谢,我现在真的很满意。