【发布时间】:2020-05-07 19:10:30
【问题描述】:
def missing_array(a,b):
a=a.sort()
b=b.sort()
for i,j in a,b:
if i!=j:
return i
return a[-1]
missing_array([1,2,3,4,5,6],[1,2,4,5,6])
为什么会出现这个错误
TypeError Traceback (most recent call last)
<ipython-input-3-7c1f70dbb9ae> in <module>
9 return a[-1]
10
---> 11 missing_array([1,2,3,4,5,6],[1,2,4,5,6])
12
<ipython-input-3-7c1f70dbb9ae> in missing_array(a, b)
3 b=b.sort()
4
----> 5 for i,j in a,b:
6 if i!=j:
7 return i
TypeError: cannot unpack non-iterable NoneType object
【问题讨论】:
-
列表上的
.sort()方法不返回任何内容 - 它不需要,您显然已经有了列表,以便在其上调用排序方法. -
寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为、特定问题或错误以及重现它所需的最短代码在问题本身。没有明确问题陈述的问题对其他读者没有用处。见:How to create a Minimal, Complete, and Verifiable example.
-
.sort()返回None。在您的情况下,a=a.sort();b=b.sort()a,b分配给None。如果您不想就地排序列表,请尝试使用sorted()。
标签: python arrays algorithm list data-structures