标签:iterable span 遍历 迭代 err mod ack color ted
error01:
字符串方法jion()
语法:“连接符字符串”.join(iterable)
注:“连接符字符串” 本身就是一个字符串,iterable可迭代得数据类型:str,list,touple,dict,set
1、当序列中得元素有整数时:
list = [11,22]
a = “*”.join(list)
预想结果为:11*22
实际运行结果为:
D:\install\Python36\python.exe D:/install/project/总结.py
Traceback (most recent call last):
File "D:/install/project/总结.py", line 113, in <module>
a = "*".join(lis)
TypeError: sequence item 0: expected str instance, int found
没有找到str对象,经验证如果list中全为字符串就可以。
join方法不能将带有数字的列表转换成字符串,同理tuple中的元素,dict中的key如果是数字,同样会报错。
解决方法:
1、遍历循环列表(或tuple,dict,set等)将其转化成字符串
list = [11,22]
list_temp = []
for i in list:
list_temp.append(str(i))
2、再通过join方法将列表转换成字符串
list_str = “*”.join(list_temp)
>>> 11*22
也可用列表生成式做:
“*”.join(‘%s’ %i for i in list)
标签:iterable span 遍历 迭代 err mod ack color ted
原文地址:https://www.cnblogs.com/sunxiuwen/p/9160734.html