Python 数组中两个元素的一部分
下面是python代码:Python 数组中两个元素的一部分,python,Python,下面是python代码: def addition(list1,x): left = 0 list1 = list1.sort() print list1 right = len(list1)- 1 while left < right: if list1[left] + list1[right] > x: right =right -1 elif list1[left] + l
def addition(list1,x):
left = 0
list1 = list1.sort()
print list1
right = len(list1)- 1
while left < right:
if list1[left] + list1[right] > x:
right =right -1
elif list1[left] + list1[right] <x:
left =left +1
else:
return True
return False
data_1 = [3,4,5,2,1,10,2,5,33]
print "output"
print addition(data_1,6)
在上面的代码中有一个错误。你能帮我一下吗?列表。排序将列表排序到位,但不返回任何值
您应该使用list1.sort,而不是list1=list1.sort。.sort就地排序并返回None,这当然没有属性,因此会出现错误
改用:
# This sorts the list in-place, so don't assign the result to a variable.
list1.sort()
或
如果您告诉我们在right=lenlist1-1上看到的错误,会有所帮助,因为len不属于none Objects的一部分。请用sortedlist1替换list1.sort
# This function returns a new list, so you can assign it to a variable.
list1 = sorted(list1)