【Python】TypeError: can only concatenate list (not "int") to list

运行Python,报TypeError: can only concatenate list (not "int") to list

# 快排
def qsort(seq):
if seq == []:
return []
else:
pivot = seq[0]
lesser = qsort([x for x in seq[1:] if x < pivot])
greater = qsort([x for x in seq[1:] if x > pivot])

return lesser + pivot + greater


if __name__ == '__main__':
seq = [5, 6, 78, 9, 0, -1, 2, 3, -65, 12]

print(qsort(seq))


出现这样的错误是因为试图将一个列表与一个非列表类型的值连接,这是不允许的。列表连接两边必须都为列表(list): 
可以改为如下:

return lesser + [pivot] + greater


可见:

相同类型的序列可以相加,尽管序列中元素的数据类型是不同的;

不同类型的序列不可以相加;

你可能感兴趣的:(【Python】TypeError: can only concatenate list (not "int") to list)