首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我想输入enter来停止我的程序,但是ValueError:带有基10的int()无效文字:“”出现了

我想输入enter来停止我的程序,但是ValueError:带有基10的int()无效文字:“”出现了
EN

Stack Overflow用户
提问于 2018-09-18 17:29:51
回答 1查看 41关注 0票数 0

我想要建立一个圆圈,我可以继续输入标记,并将其添加到列表中,直到输入"Enter“(意思是"”),程序的这一部分就会中断并继续前进。但我坚持这个部分,我搜索了关于ValueError,但它似乎不符合我的情况,或我只是不明白的重点。因此,我在这里请求,请帮助。

代码语言:javascript
复制
#display list
def dis_score():
    for item in score:
        print(item,end = " ")
    print()

#mainbody
score = []
while True:
    x = int(input("Enter the marks please:"))
    if (x>0):
        score.append(x)
    if (x == ""):
        break

print("before sorted:", end = " ")
dis_score()
n = len(score)-1

for i in range(0,n):
    for j in range(0,n-i):
        if (score[j]>score[j+1]):
            score[j],score[j+1]=score[j+1],score[j]
print("sorted:", end = " ")
dis_score()

我进去的结果是:

请输入标记:80

请输入标记:70

请输入标记:85

请输入标记:

代码语言:javascript
复制
ValueErrorTraceback (most recent call last)  
<ipython-input-5-fa9f906bfcf8> in <module>()  
9 score = []  
10 while True:  
---> 11 x = int(input("Enter the marks please:"))  
12 if (x>0):  
13 score.append(x)  

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

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-18 17:33:34

问题是,如果输入值不是有效整数,int(input("Enter the marks please:"))总是会引发异常(您正在报告的异常)。

你能做的是:

代码语言:javascript
复制
while True:
    s = input("Enter the marks please:")
    if s == "":
        break
    x = int(s)
    if x > 0:
        score.append(x)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52391839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档