【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 fo.

运行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


可见:

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

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

相关文章
|
4月前
|
开发者 Python
【Python】已解决:TypeError: __init__() got an unexpected keyword argument ‘port’
【Python】已解决:TypeError: __init__() got an unexpected keyword argument ‘port’
655 0
【Python】已解决:TypeError: __init__() got an unexpected keyword argument ‘port’
|
1月前
|
Python
[oeasy]python036_数据类型有什么用_type_类型_int_str_查看帮助
本文回顾了Python中`ord()`和`chr()`函数的使用方法,强调了这两个函数互为逆运算:`ord()`通过字符找到对应的序号,`chr()`则通过序号找到对应的字符。文章详细解释了函数参数类型的重要性,即`ord()`需要字符串类型参数,而`chr()`需要整数类型参数。若参数类型错误,则会引发`TypeError`。此外,还介绍了如何使用`type()`函数查询参数类型,并通过示例展示了如何正确使用`ord()`和`chr()`进行转换。最后,强调了在函数调用时正确传递参数类型的重要性。
23 3
|
2月前
|
JSON 安全 数据格式
7-6|python报错TypeError: can't pickle _thread.RLock objects
7-6|python报错TypeError: can't pickle _thread.RLock objects
|
3月前
|
存储 C语言 Python
Python中的int语句:深入探索与应用
Python中的int语句:深入探索与应用
|
3月前
|
TensorFlow 算法框架/工具
【Tensorflow】解决A `Concatenate` layer should be called on a list of at least 2 inputs
在TensorFlow 2.0中,使用Concatenate函数时出现错误,可以通过替换为tf.concat 来解决。
43 4
|
4月前
|
Python
python类型错误(TypeError)
【7月更文挑战第20天】
66 4
|
4月前
|
Python
python类型错误(TypeError)
【7月更文挑战第13天】
67 9
|
4月前
|
Python
stack=s+stack#TypeError: can only concatenate str (not “list“) to str
stack=s+stack#TypeError: can only concatenate str (not “list“) to str
|
4月前
|
Web App开发 测试技术 API
【Python】已解决:TypeError: *init*() got an unexpected keyword argument ‘firefox_options’
【Python】已解决:TypeError: *init*() got an unexpected keyword argument ‘firefox_options’
78 0
|
5天前
|
存储 数据挖掘 开发者
Python编程入门:从零到英雄
在这篇文章中,我们将一起踏上Python编程的奇幻之旅。无论你是编程新手,还是希望拓展技能的开发者,本教程都将为你提供一条清晰的道路,引导你从基础语法走向实际应用。通过精心设计的代码示例和练习,你将学会如何用Python解决实际问题,并准备好迎接更复杂的编程挑战。让我们一起探索这个强大的语言,开启你的编程生涯吧!
下一篇
无影云桌面