Python 在while循环中使用if语句的AI多输入对话不';不行?
我正在制作的人工智能在一个while循环中工作,我想让它说的每件事都有if语句,例如:Python 在while循环中使用if语句的AI多输入对话不';不行?,python,string,python-3.x,if-statement,while-loop,Python,String,Python 3.x,If Statement,While Loop,我正在制作的人工智能在一个while循环中工作,我想让它说的每件事都有if语句,例如: `while 1: lis = ("im bored","game","im board","what do you want to do","what should we do","rage","i","I","smashed","broke","destroyed","cracked","grounded","detention","in trouble","nothing","not much",
`while 1:
lis = ("im bored","game","im board","what do you want to do","what should we do","rage","i","I","smashed","broke","destroyed","cracked","grounded","detention","in trouble","nothing","not much","erics number","date","time","no","nope","nah","not","yes","yep","yeah","in deed","bye","gtg","got to go","see you","c u","hi","hello","hello","hia","fuck","crap","shit","bleep","omg","OMG","oh my god","","","","","","look up","email","map","add Note","get Note","joke","rabid donkey","game","quit","help","raging","hurt","fire","","thanos","erics mad","danger","sad","upset","","","creator","thanks","lol","ok","k","yep","report","owner","maker","jarvis","coder","thank you","sup","whats up","what's up","hey","hah")
resp2 = input("")
esa = ""
for word in lis:
if word in resp2:
esa = word
if esa in ("quit","bye","gtg","got to go","see you","c u"):
byebro = random.choice(("ok bye Sergei cu later","bye sir","c u later sir","talk to you later then","talk to you later"))
print (byebro)
os.system("say '"+byebro+"'")
exit()
if esa in ("look up","web search","search the web for"):
c = random.choice(("ok","lets see","let me see","ok sir il get right on that lets see","im looking up and i dont see anything??"))
print (c)
c1 = ("sorry an error has acurred package missing")
print (c1)
os.system("say '"+c+"'")
os.system("say '"+c1+"'")
break
if esa == "add note":
d = random.choice(("ok sir one sec il pull up the note pad","ok sir one sec","yeah one sec il pull it up","one sec sir","ok","ok sir"))
print (d)
os.system("say '"+d+"'")
note1 = input("")
notes.append(note1)
break
if esa == "get note":
e = random.choice(("ok sir one sec il pull up the your recent notes","ok sir one sec","yeah one sec il pull it up","one sec sir","ok","ok sir notes","ok sir"))
print (e)
os.system("say '"+e+"'")
好的,这里有数百个这样的if语句,但我希望能够像这样和jarvis交谈。我可以说些什么,然后他会问我,然后我会回答,然后他回答,然后它会从if语句中跳出,然后再次通过循环和所有if语句
我:我被禁足了,贾维斯
贾维斯:你做了什么
我:我打碎了一扇窗户
贾维斯:哦,好的
所以我希望代码看起来像这样,但它不起作用
if esa in ("im grounded","im in trouble","i got detention"):
print "your always getting in trouble its like second nature to you"
esa3 = input("what did you do")
if esa3 in ("i broke something","i smashed something"):
print "your always breaking stuff"
我发现你需要在if语句中加入if语句
if esa in ("im grounded","im in trouble","i have detention","i got detention"):
punish = random.choice(("your always getting in trouble its like second nature for you lol","to bad i guess no fun for a while well its your fault lol","did you and eric do somthing stupid?!"))
print(punish)
os.system("say '"+punish+"'")
wdydQ = random.choice(("what did you do!!?!!","what did you do this time","can you go one week with out geting exspelled or suspended or in trouble what did you do!!"))
print (wdydQ)
os.system("say '"+wdydQ+"'")
lisgrd = ("i broke","i smashed","i destroyed","i cracked","i hit","i didn't","i hurt","i jumped","i had sex","i went to")
respgrd = input("")
esagrd = ""
for wordgrd in lisgrd:
if wordgrd in respgrd:
esagrd = wordgrd
if esagrd in ("i broke","i smashed","i destroyed","i cracked"):
YbsA = random.choice(("your always breaking shit","im not paying for it this time and niether am i taking the blame!"))
print (YbsA)
os.system("say '"+YbsA+"'")
break
elif esagrd in ("i hit","i didn't","i hurt","i jumped","i had sex","i went to"):
grd33 = random.choice(("i dont know what to say now","oh my god","your fing mental","are you kidding me"))
print (grd33)
os.system("say '"+grd33+"'")
break
elif esagrd in ("nothing","i dont know","i don't know","um"):
grdq12 = random.choice(("don't bs me whatcha do!!","just tell me what happened","whatever"))
print (grdq12)
os.system("say '"+grdq12+"'")
continue
我应该在while循环中使用for还是另一个while循环?确保if与for循环对齐,而不是if字grd