嗨.我在执行代码时遇到了一个问题.但是我得到了一个错误'TypeError:只能将str(而不是"in


lst = ['a', 'b', 'c', 'd', 'e', 'i', 'u', 'y', 'l', 'i']
if(len(lst)%3==0):
pointer = 0
for i in lst:
for j in range(pointer, pointer+3):
print(lst[j])
pointer += 1
else:
rem = 3
pointer = 0
for i in lst:
for j in range(pointer, pointer+3):
print(lst[j])
pointer += 1
rem -= 1
if (pointer > rem):
pointer = lst [0]
print(lst[j])

我不确定我是否有一个好的方法,但如果元素的数量不能被3整除,我希望我的指针指向列表的第一个元素。

当你说时

pointer = lst[0]

指针变量现在将存储一个字符串(lst[0]应该是列表中的字符串'a'(。因此,当您的代码稍后运行到以下行时:

pointer += 1

您现在正试图将字符串CCD_ 3添加到整数CCD_。这就是类型错误的来源。你可以";添加";两个数字或";连接";两根绳子。如果不显式地将一个字符串和一个整数转换为另一个,就无法组合字符串和整数。

相关内容

最新更新