【发布时间】:2025-12-07 22:25:02
【问题描述】:
我的代码:
def make_response(self):
recognised = False
get_cmd = False
database = {
"hello": "Nice to meet you. What can I do for you?",
"hi": "Nice to meet you. What can I do for you?",
"hey": "Nice to meet you. What can I do for you?",
"goodbye": "Bye. See you next time!"
}
self = self.lower()
for i in database:
if i in self:
recognised = True
value = database.get(i)
print(value)
def robot():
print('Welcome to robot.py')
print('What can I do for you?')
while True:
query = input('>')
make_response(query)
robot()
当我输入“hello”时,程序给出了预期的响应,但它只是退出而没有完成循环。哪条线打破了循环? 谢谢。
【问题讨论】:
-
它适用于我的机器:D
-
我无法重现这个。在 repl.it 上执行时,它会循环。
-
我在 PyCharm 上运行
-
尝试在终端中运行代码,我最近遇到了类似的问题,当我更换终端时它工作了。
-
你可能不想调用变量 self ..
标签: python python-3.x loops while-loop