您的位置:首页 > 编程语言 > Python开发

python list转换字符串报错TypeError: sequence item 0: expected str instance, int found

2020-01-13 07:05 627 查看

 

python list转换字符串报错TypeError: sequence item 0: expected str instance, int found

场景:将列表转化为指定分隔符的字符串,列表当中有数字时会报如上错误。

 

user.txt:
alex:202cb962ac59075b964b07152d234b70:1234:0
tom:202cb962ac59075b964b07152d234b70:2234:0
test01:202cb962ac59075b964b07152d234b70::0

d_user内容如下: {'alex': ['alex', '202cb962ac59075b964b07152d234b70', '1234', '0'], 'tom': ['tom', '202cb962ac59075b964b07152d234b70', '2234', '0'], 'test01': ['test01', '202cb962ac59075b964b07152d234b70', '', '0']}

>>> l1 = ['alex', '202cb962ac59075b964b07152d234b70', '1234', 0]
'0'

>>> ':'.join(l1)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: sequence item 3: expected str instance, int found

解决办法:

>>> ':'.join('%s' %i for i in l1)
'alex:202cb962ac59075b964b07152d234b70:1234:0'

  

def dolock(username):
file_content = ""
d_user[username][3] = 1
for k in d_user:
file_content += ':'.join(d_user[k]) + '\n'
with open(user_file,'r+') as ufile:
ufile.write(file_content)

 

def dolock(username):
file_content = ""
d_user[username][3] = 1
for k in d_user:
file_content += ':'.join('%s' %i for i in d_user[k]) + '\n'
with open(user_file,'r+') as ufile:
ufile.write(file_content)

  

转载于:https://www.cnblogs.com/pyops/articles/9752075.html

  • 点赞
  • 收藏
  • 分享
  • 文章举报
dingwangde0929 发布了0 篇原创文章 · 获赞 0 · 访问量 401 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐