我是靠谱客的博主 土豪外套,这篇文章主要介绍Bug记录——sequence item 0: expected str instance, int found问题描述原因分析:解决方案:,现在分享给大家,希望可以做个参考。

问题描述

制作等比数列的时候,输出时发现了该报错:sequence item 0: expected str instance, int found

a, b, c = 1, 3, 5
ls = []
for i in range(c):
    if i == 0:
        ls.append(a)
    else:
        ls.append(a*(b**i))
print(",".join(ls))

错误:

sequence item 0: expected str instance, int found

原因分析:

错误意思:列表中含有数字,不能直接转化成字符串

原因是 .join()方法只能对字符串进行添加操作,所以报错啦!


解决方案:

查了一下资料,提供的解决方案有点麻烦,如下:

a, b, c = 1, 3, 7
ls = []
for i in range(c):
    ls.append(a*(b**i))
print(",".join('%s' %id for id in ls))

用的是列表推导式对ls列表遍历,将其转换为字符串。但是我觉得可以在追加元素至列表时将其转换为字符串,如下:

a, b, c = 1, 3, 7
ls = []
for i in range(c):
    ls.append(str(a*(b**i)))
print(",".join(ls))

最后

以上就是土豪外套最近收集整理的关于Bug记录——sequence item 0: expected str instance, int found问题描述原因分析:解决方案:的全部内容,更多相关Bug记录——sequence内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(125)

评论列表共有 0 条评论

立即
投稿
返回
顶部