Python中关于join函数的陷阱?(python中join方法)

网友投稿 400 2022-08-31


Python中关于join函数的陷阱?(python中join方法)

目录

​​说明​​​​数据说明​​​​正确示例​​​​错误示例​​​​解决办法​​

说明

最近在用Python的join函数连接多个列表时,出现了如下两个错误,即合并类型不一致。折腾了很久才找到原因,真是基础不牢,地动山摇。​​​TypeError: sequence item 3: expected str instance, int found​​​ 或​​TypeError: can only concatenate list (not "str") to list​​

数据说明

a = ['a','c','c']b = ['a','s','e']c = [4,5,'e']d = ['f']e = 'g'f = 'a'

正确示例

以下运行成功。

print('\t'.join(a+b))print('\t'.join(a+d))print('\t'.join(e+f))# a       c       c       a       s       e# a       c       c       f# g       a

错误示例

join函数只能连接同类型的数据,要么都为list,要么都为str等。

同样列表内元素也是如此,必须是同类型的,否则需要转换。

print('\t'.join(a+c))# TypeError: sequence item 3: expected str instance, int foundprint('\t'.join(a+e))# TypeError: can only concatenate list (not "str") to list

解决办法

格式转换

print('\t'.join(a+[str(i) for i in c]))print('\t'.join(a+[e]))# a       c       c       4       5       e# a       c       c       g

作者:Bioinfarmer


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Windows下的Python多版本管理?(windows更新python版本)
下一篇:Java毕业设计实战之校园一卡通系统的实现
相关文章

 发表评论

暂时没有评论,来抢沙发吧~