python - 如何读取特定位置的字符串,如果它们匹配,然后在 python 中打印所有行?
问题描述
我正在学习python。我想做这个:
我有一个包含很多行的文本文件(每行有 26 个字符串,有些字符串可以是空格,也可以不是空格,跟在行数之后):
BBBTHTHTTTTCCCHHHHHH 1
CCCTTTTHHHHHHHHHHHTTTTTTTT 2
TTTTTTTTTTHHHHHHHHCCCCCC 3
CTCTTTTTTTTTTTTTTHHHHHHHHH 4
我想从 22 到 26 位置读取字符串,如果所有这些位置都是 H,则打印完整的行。例如:
BBBTHTHTTTTCCCHHHHHH 1
CTCTTTTTTTTTTTTTTHHHHHHHHH 4
我的剧本是这样的
f = open("file.txt", "r")
lines = [line for line in f.readlines() if line[22:26]=="H"]
print lines
有人可以帮我解决吗?感谢您的支持和提示。
解决方案
尝试这个:
with open('file.txt') as f:
for i in f:
if i[21:26]=='HHHHH':
print(i)
推荐阅读
- apache-kafka-connect - 如何修复 msk 连接器胶水注册表超时错误?
- azure - 通过 GCP、AWS 和 Azure 中的 API 探索 Web 资源
- typescript - 如何从 TS 中的库中扩展类型?
- c# - 在 UWP C# 中的 System.Net.Http 中发送 JSON 的原始列表
- jqgrid - 使用页面上默认数字字段中的值更新 JQGrid 单元格
- apache-spark - 保存到 csv 后 Pyspark 时间戳格式更改
- vue.js - Vue的v-html不支持promise等,vue绑定值全部不支持promise,有解决办法吗?
- php - PHP Regex 创建类似液体标签的东西
- python - 如何从句子中提取单词并检查其中是否不存在单词
- google-bigquery - 无法在 Bigquery 中解决错误消息“预期的“(”但在 [4:16] 获得标识符“tripduration”)