我正在制作一个python程序,其中我必须列出字符和数字,并且我必须将这些字符和数字连接起来以组成一个字符串
例如['s','m','a','r','t','1','2','3']
应该是smart123
。
它无法正常工作,给了我类型错误,但是我对类型错误在哪里感到困惑。列表类型相同。我为此使用**for**
循环。
我的代码是:
list = ['s','m','a','r','t',1,2,3]
s = ""
for i in list:
s += i
print(s)
答案 0 :(得分:3)
使用join()
:
list_ = ['s','m','a','r','t',1,2,3]
joined = ''.join([str(x) for x in list_])
print(joined)
# smart123
答案 1 :(得分:2)
要解决类型错误:
list=['s','m','a','r','t',1,2,3]
s=""
for i in list:
s+=str(i)
print(s)
由于将数字附加到字符串上,因此出现类型错误。因此,首先,您需要将数字转换为str,然后附加它。
此外,您可以跳过循环并尝试''.join()
list = ['s','m','a','r','t',1, 2, 3]
s = ''.join([str(i) for i in list])
最后,list
是python中的特殊关键字,因此切勿仅将list
用作列表的名称。