我正在用python写一个简单的助手,我遇到了这样一个问题:在代码中
print(">>> Привет, я Енот, компьютерный ассистент!")
print(">>> Вот что я могу: ")
skills = ('1) Дать прогноз одежды', '2) Напомнить время', '3) Сосчитать выражение (калькулятор).')
for skill in skills:
print(skill)
act = input()
if not isinstance(act, int):
print("Упс, похоже ты где-то ошибся, посмотри на мой список команд ещё раз: ")
这样用户就不会在变量中输入act ,第一个if 'a 之后的代码总是被执行- “哎呀,看起来你在某处犯了错误,再看看我的命令列表:”为什么?如何解决?
input()无论您在输出中输入什么,始终是一个字符串,即 typestr,所以int它永远不存在。因为函数
input总是返回一个字符串。检查输入字符串中的所有数字字符是否可以使用act.isnumeric().input() 函数返回一个字符串,您只需要像这样更改类型:
尝试使其成为
skills字典,并使用循环对检查进行排序for,例如: