python - 为什么我的代码没有显示任何输出?我正在尝试使用 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
推荐阅读
- sql - Ruby on Rails 将 Timescale SQL 速率代码转换为 Ruby
- database - 合并文档取决于它们在 MongoDB 中的数组值
- algorithm - 骰子组合总数
- java - 使用其他语言激活 Powershell 脚本
- php - 如何为 Woocommerce 产品类别描述添加阅读更多按钮
- android - 没有HTTP的飞镖网络?
- mysql - 用当前日期和自定义时间替换 now ()
- java - Java Thread和EventQueue的invokeLater如何一个接一个地运行?
- html - Html: css: 水平对齐 div 元素
- javascript - 角度材料排序不适用于角度 10