为什么我的代码没有显示任何输出?我正在尝试使用while循环来调试我在它之前遇到的错误
f = file.readlines()
l = 0
while l <= len(f):
for i in range(l):
x = f[i]
l += 1
for a in x:
if a == "a":
f.pop(i)
break
else:
continue
print(f)
file.close()
我想从其中包含任何字符 'a' 的数据中弹出任何行。
回答
您不需要管理自己的行计数器并逐个字符地遍历每一行。文件本身是可迭代的,无需使用readlines,并且in运算符会立即告诉您是否"a"是给定行中的字符。
with open("filename") as f:
for line in f:
if "a" in line:
print(line, end="") # line already ends with a newline
THE END
二维码