我正在尝试检查字符串
stcodelist[iii]
是否存在于较长的字符串alldayfiletext
中
stcodelist
是一个逗号分隔的 11 个 4 字母代码列表,编号为 0 到 10alldayfiletext
是一个字符串,其中包含 11 个 4 字母代码的数据stcode
是 alldayfiletext
iii=0
while iii<len(stcodelist):
if(stcodelist[iii] in alldayfiletext):
stcode.append(stcodelist[iii])
else:
print (stcodelist[iii], "is UNAVAILABLE.")
iii+=1
运行上面的代码会产生:
TypeError:需要类似字节的对象,而不是“str”
最初我尝试在 Python 2.7 中使用
alldayfiletext.find
,它按预期工作,但自从迁移到 Python 3 后就没有了。
我目前使用的是Python 3.11
问题已解决 - 我的错误......也就是说,我发现了错误。输入代码列表确实是一个文本数组,但是我正在搜索以检查输入代码列表的第二个文本变量实际上是一个字节对象并导致了错误。一旦我将文本变量转换为字符串,一切就正常了。