python - ValueError:int() 以 10 为底的无效文字:'[2,7,11,15]'
问题描述
当我在我的电脑上运行这段代码时,它没问题,但是当我在 leetcode 上提交它时,它提供的运行时间更像上面。错误 :
ValueError: invalid literal for int() with base 10: '[2,7,11,15]'
if (int(arr[i])+int(arr[j]))==target and int(arr[i])!=int(arr[j]) and cnt<1:
Line 11 in <module> (Solution.py)
我应该解决这个问题吗?
arr=[]
arr=input()
arr=arr.split()
target=int(input())
cnt=0
for i,num in enumerate(arr):
for j,num1 in enumerate(arr):
if (int(arr[i])+int(arr[j]))==target and int(arr[i])!=int(arr[j]) and cnt<1:
li=[]
li.append(i)
li.append(j)
li=sorted(li)
print(li)
cnt=cnt+1;
解决方案
此错误表明转换失败,可能是在您尝试转换arr[...]
为整数时。
正如您在错误中看到的那样,您尝试转换[2,7,11,15]
为立即失败的 int。您的逻辑可能是错误的arr.split
:您假设输入将用空格(aka 2 7 11 15
)给出,而用逗号分隔([2, 7, 11, 15]
)。
对于该确切输入,您应该使用arr=arr.split(',')
并删除字符串开头和结尾的 '[' 和 ']'。您可以通过仅获取arr
.
固定线路:arr = arr[1:-1].split(',')
.
这应该涵盖导致问题的特定输入。话虽如此,我不确定它是否会涵盖所有情况,因为您没有给出完整的任务。这取决于您如何假设输入将被给出。
推荐阅读
- javascript - 如何通过新日期将部分的 offsetHeight 同步到当前时间?
- python - PyQt5:同一窗口的多个实例
- asp.net-core - 自定义 swagger ui 以显示参数架构
- javascript - 未捕获的类型错误:d3.csv(...).then 不是函数
- macos - Pygame 窗口根本不显示。它甚至没有说任何错误,它只是说“pygame 1.9.6 Hello from the pygame community”。
- rust - 为什么在具体实现中使用 Self 而不是类型的名称?
- r - 抓取数据时单击许多相同的按钮
- mysql - 删除除一个之外的所有记录,并且仅使用“类型”中的字段值
- css - LES CSS:没有嵌套的伪选择器问题
- python - 按年份和月份范围过滤数据