【问题标题】:Input function is not working as expected in Jupyter Notebook输入功能在 Jupyter Notebook 中未按预期工作
【发布时间】:2021-12-14 17:54:39
【问题描述】:

这个简单的一行代码运行了超过 1 分钟并显示此错误。

我已经在 VS 代码中安装了 jupyter notebook,并使用 miniconda 而不是 anaconda...我无法解决这个问题。

2行代码是:

my_number = int(input("enter a number: "))

print(my_number)

错误:

ValueError                                Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_10048/2282921608.py in <module>
----> 1 my_number = int(input("enter a number: "))
      2 print(my_number)

ValueError: invalid literal for int() with base 10: ''

【问题讨论】:

  • 你在输入中输入了什么?
  • 您的程序就像您发送了一个空字符串作为输入一样。我不知道那个特定的环境是如何工作的,但我猜它正在等待您输入一些输入并在终端中按回车键,但它在一分钟后超时并发送空白字符串,从而引发了该错误。同样,这只是在黑暗中拍摄。我不知道在这种情况下是否接受任何控制台输入。
  • 尝试重启你的 Jupyter 内核

标签: python visual-studio-code jupyter-notebook miniconda


【解决方案1】:

请在输入框中输入一个整数,而不是浮点数或空。

【讨论】:

    【解决方案2】:

    您应该输入一个整数而不是字符串。如果您在输入中输入了字符串,则 int 关键字无法转换字符串。所以,用一个整数来解决这个问题。

    【讨论】:

    • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
    【解决方案3】:

    您的问题是: my_number 值是一个浮点数。示例:1500.0000

    一个简单的解决方法是:

    my_number = int(float(input("enter a number: ")))
    

    如果号码是35.6573,则结果将为35

    数字只能是int!

    【讨论】:

    • 什么?该消息清楚地表明输入是''
    • 就是这样!它只能是一个 int。
    • 如果输入的是'',你怎么能说这个数字是一个浮点数呢? '' 不是浮点数
    • 那有什么问题呢?
    猜你喜欢
    • 2013-08-29
    • 2020-04-28
    • 2021-08-27
    • 1970-01-01
    • 2013-10-15
    • 1970-01-01
    • 2012-10-07
    • 2014-08-13
    • 1970-01-01
    相关资源
    最近更新 更多