for循环相同字符只输出第一索引的问题
str5 = "aaaaaaaa"
for i in str5:
if i.find("a")!=-1:
print(str5.index(i))
运行结果:
理想的运行结果应该是输出0 1 2 3 4 5 6 7
这个问题跟语言应该是没有直接问题的,与代码逻辑相关
但是在进行数据清洗的过程中,我们经常会以相同字符串作为分界来提取有用的数据,这时候如果写一个for循环就会遇到很多问题;
可以采取以下方式完善代码
加入列表 代码可以如下
j = 0
QA = []
while j<len(list_1):
if list_1[j].find(str3)!=-1:
print(j)
QA.append(j)
j = j + 1
print(QA)
print(type(QA[0]))
输出结果:
在实际处理过程中,可以再加一个变量作为索引器,方便对相应位置的数据进行处理;
上面的方法可以在不改变原代码整体结构的情况下进行,只需要增加一个函数或一段代码即可,在要处理的代码块中,增加相应的字段即可处理。
以上是我个人学习过程中的总结和见解,可能不够严谨和标准,各位可以在评论区中提出更好的方法。