在 Python 中调用 'input' 命令时出错 3
Error when calling an 'input' command in Python 3
所以我已经使用了 python 足以知道这是非常简单的代码,没有理由不能正常工作。本质上,我调用一个输入,用户输入一周中的某一天,我还没有为每一天分配功能,所以我用一个 'else' 命令测试了输入,它告诉你 "Invalid input",并且然后召回输入并再次询问您。我通过输入不同于我定义的内容来测试它,但它 returns 什么也没有。它应该打印出"Invalid input."然后重新询问,但它没有。
我是否遗漏了一些非常微妙的东西,或者 Python 在 Sublime Text 3 中不能正常工作?
注意:我在 Python3 中编写,但我从未指定 Sublime Text 3 使用该版本,我只是假设它已经在最新版本的 Python 中解释它 -也许那是我的错误,如果是的话;请有人告诉我如何解决它。
代码如下:
def ask_day():
day = input("What's the day today?: ")
if day == monday:
mon()
elif day == tuesday:
tue()
elif day == wednesday:
wed()
elif day == thursday:
thu()
elif day == friday:
fri()
elif day == saturday:
sat()
elif day == sunday:
sun()
else:
print("Invalid input. Enter a day of the week in lower-case.")
ask_day()
def ask_time():
time = input("Whats the current hour?: ")
def mon():
pass
ask_day()
ask_time()
这是输出:
What's the day today?: something else
就像我说的,它应该重新要求我输入一天,但是......没有。它没有结束,它只是卡住了。
有趣的旁注:别再骚扰这个问题了,我只是问了个笑话
问题
Sublime Text 不支持 Python 的 input
功能。 (我知道,一开始这很烦人。)但这是一件好事!它迫使您学习其他方法来 运行 您的代码。
解决方案
随着编码人员获得经验,他们开始从命令行运行他们的程序。
- 第 1 步:打开终端
- 第 2 步:运行
python3 <your-file.py>
。如果您收到 command not found
之类的错误,请尝试 python <your-file.py>
.
还有
星期一、星期二等词应该用引号括起来,因为它们是 strings
,而不是 variables
(您不是在为它们赋值,它们本身就是值)。
例如:'monday'
希望对您有所帮助!有关 运行ning 命令行文件的更多信息 here.
所以我已经使用了 python 足以知道这是非常简单的代码,没有理由不能正常工作。本质上,我调用一个输入,用户输入一周中的某一天,我还没有为每一天分配功能,所以我用一个 'else' 命令测试了输入,它告诉你 "Invalid input",并且然后召回输入并再次询问您。我通过输入不同于我定义的内容来测试它,但它 returns 什么也没有。它应该打印出"Invalid input."然后重新询问,但它没有。
我是否遗漏了一些非常微妙的东西,或者 Python 在 Sublime Text 3 中不能正常工作?
注意:我在 Python3 中编写,但我从未指定 Sublime Text 3 使用该版本,我只是假设它已经在最新版本的 Python 中解释它 -也许那是我的错误,如果是的话;请有人告诉我如何解决它。
代码如下:
def ask_day():
day = input("What's the day today?: ")
if day == monday:
mon()
elif day == tuesday:
tue()
elif day == wednesday:
wed()
elif day == thursday:
thu()
elif day == friday:
fri()
elif day == saturday:
sat()
elif day == sunday:
sun()
else:
print("Invalid input. Enter a day of the week in lower-case.")
ask_day()
def ask_time():
time = input("Whats the current hour?: ")
def mon():
pass
ask_day()
ask_time()
这是输出:
What's the day today?: something else
就像我说的,它应该重新要求我输入一天,但是......没有。它没有结束,它只是卡住了。
有趣的旁注:别再骚扰这个问题了,我只是问了个笑话
问题
Sublime Text 不支持 Python 的 input
功能。 (我知道,一开始这很烦人。)但这是一件好事!它迫使您学习其他方法来 运行 您的代码。
解决方案
随着编码人员获得经验,他们开始从命令行运行他们的程序。
- 第 1 步:打开终端
- 第 2 步:运行
python3 <your-file.py>
。如果您收到command not found
之类的错误,请尝试python <your-file.py>
.
还有
星期一、星期二等词应该用引号括起来,因为它们是 strings
,而不是 variables
(您不是在为它们赋值,它们本身就是值)。
例如:'monday'
希望对您有所帮助!有关 运行ning 命令行文件的更多信息 here.