ValueError: invalid literal for int() with base 10: '[2,7,11,15]'
ValueError: invalid literal for int() with base 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
上可能是错误的:你假设输入将用空格给出(又名 2 7 11 15
),而它用逗号分隔([2, 7, 11, 15]
)。
对于准确的输入,您应该使用 arr=arr.split(',')
并删除字符串开头和结尾的“[”和“]”。您可以仅使用 arr
.
的子字符串来执行此操作
固话:arr = arr[1:-1].split(',')
.
这应该涵盖导致问题的特定输入。话虽如此,我不确定它是否会涵盖所有情况,因为您没有给出完整的作业。这取决于您假设输入的方式。
当我 运行 这段代码在我的电脑上时它没问题,但是当我在 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
上可能是错误的:你假设输入将用空格给出(又名 2 7 11 15
),而它用逗号分隔([2, 7, 11, 15]
)。
对于准确的输入,您应该使用 arr=arr.split(',')
并删除字符串开头和结尾的“[”和“]”。您可以仅使用 arr
.
固话:arr = arr[1:-1].split(',')
.
这应该涵盖导致问题的特定输入。话虽如此,我不确定它是否会涵盖所有情况,因为您没有给出完整的作业。这取决于您假设输入的方式。