You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

报错Execution failed. ValueError: invalid literal for int() with base 10的含义是什么?

搞定这个ValueError报错:invalid literal for int() with base 10

嘿,这个报错其实很好理解,我给你掰扯清楚:

报错到底啥意思?

ValueError: invalid literal for int() with base 10 翻译过来就是:你让int()函数去转换一个字符串,但这个字符串根本不是十进制整数的合法格式!

举个例子,int("123")完全没问题,但如果你给它"abc"、"12.3"、甚至是空字符串(直接按回车),int()就懵了——这玩意儿没法转成整数啊,于是就抛出这个错误。

你的代码为啥会触发这个错误?

看你写的这段代码:

L=input("\n")
N=input("\n")
for i in range(int(N)):
    W=input()
    H=input()
    if int(W)<int(L) or int(H)<int(L):
        print("UPLOAD ANOTHER\n")
    elif int(W)>=int(L) and int(H)>=int(L):
        if int(W)==int(H):
            print("ACCEPTED\n")
        else:
            print("CROP IT\n")

这里所有input()获取到的内容都是字符串,你直接丢给int()转换,但只要用户输入的不是纯数字(比如打错字输了字母、不小心带了空格、输入小数),就会触发这个报错。比如用户输入"100x"当宽度,int("100x")肯定要报错。

怎么修复?

给你两种靠谱的解决办法:

办法1:先验证输入再转换

写个小函数,确保用户输入的是整数才继续,不然一直提示重试:

def get_valid_integer(prompt):
    while True:
        user_input = input(prompt).strip()  # 先去掉前后空格
        if user_input.isdigit():  # 检查是不是纯数字字符串
            return int(user_input)
        print("哎呀,输入不对!请输入一个整数~")

# 用这个函数获取所有输入
L = get_valid_integer("\n请输入最小尺寸L:")
N = get_valid_integer("\n请输入要处理的图片数量N:")

for i in range(N):
    W = get_valid_integer("请输入图片宽度:")
    H = get_valid_integer("请输入图片高度:")
    # 后面的逻辑不变
    if W < L or H < L:
        print("UPLOAD ANOTHER\n")
    elif W >= L and H >= L:
        if W == H:
            print("ACCEPTED\n")
        else:
            print("CROP IT\n")

办法2:用异常捕获处理错误

如果不想让用户一直重试,也可以用try-except捕获错误,直接提示输入无效:

try:
    # 先把所有输入转成整数,顺便去掉空格
    L = int(input("\n").strip())
    N = int(input("\n").strip())
    for i in range(N):
        W = int(input().strip())
        H = int(input().strip())
        # 原逻辑保留
        if W < L or H < L:
            print("UPLOAD ANOTHER\n")
        elif W >= L and H >= L:
            if W == H:
                print("ACCEPTED\n")
            else:
                print("CROP IT\n")
except ValueError:
    print("输入无效!请确保所有输入都是整数哦~")

这样就能完美避开这个报错啦!

内容的提问来源于stack exchange,提问作者debashish debnath

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:16:23