python:每隔一次运行程序时,获取 ValueError:以 10 为基数的 int() 文本无效

python: Getting ValueError: invalid literal for int() with base 10 every other time I run my program

提问人:Mickles 提问时间:11/1/2023 最后编辑:pydsignerMickles 更新时间:11/1/2023 访问量:87

问:

我正在编写一个 python 程序,用于读取用户输入以进行菜单遍历。每隔一段时间运行它,我就会收到 ValueError: invalid literal for int() with base 10。相关代码如下

initialMenuSelection = 1

while initialMenuSelection != 0:
    #Initial Menu
    print("0: Quit")
    print("1: Add Pokemon")
    print("2: Set Weather")
    print("3: Add/Remove Screens")
    print("4: Calculate Damage")

    initialMenuSelection = int(input())

完整的回溯错误是:

Traceback (most recent call last):
  File "c:\Users\light\OneDrive\Desktop\minrepex.py", line 11, in <module>
    initialMenuSelection = int(input())
                           ^^^^^^^^^^^^
ValueError: invalid literal for int() with base 10: '& C:/Users/light/AppData/Local/Microsoft/WindowsApps/python3.11.exe c:/Users/light/OneDrive/Desktop/minrepex.py' 

我知道每当您尝试传递包含非整数字符或浮点数的字符串时,都会发生错误,但是在它到达用户输入之前就返回了错误。更奇怪的是,正如我所说,它只会在我运行它时每隔一次发生。有谁知道为什么会这样?任何帮助将不胜感激!我正在使用 Visual Studio Code,如果这有帮助的话。

python-3.x 用户输入 值错误

评论

0赞 pho 11/1/2023
在代码到达要求用户输入的行之前,代码中没有任何内容会引发该错误。请提供一个最小的可重现示例,以及完整的回溯,告诉您哪一行引发了错误
1赞 learner 11/1/2023
我相信每隔一段时间运行代码时,都会无意中将某些内容作为输入传递。例如,重新运行程序的命令或类似的东西
0赞 11/1/2023
我可以用 Python 3.10.6 成功运行代码
0赞 11/1/2023
这回答了你的问题吗?ValueError:以 10 为基数的 int() 的文本无效:''
0赞 Mickles 11/1/2023
@pho,我编辑了我的问题,以包括一个最小的可重复示例和完整的回溯

答: 暂无答案