python 对 文件内容 搜索_在txt文件中搜索数据

本文介绍了如何使用Python高效地搜索固定宽度列的TXT文件内容。通过创建字典映射来提升搜索速度,并展示了如何处理可能存在的多余空格,以及在找不到搜索项时提供良好错误反馈的方法。
摘要由CSDN通过智能技术生成

如果您设计了数据格式,固定宽度的列不是一个很好的格式。但如果你被他们困住了,他们很容易对付。在

首先,要分析数据:addressbook = []

with open('addressbook.txt', 'r') as f:

for line in f:

name, city = line[:17], line[17:]

last, first = name.split(',')

addressbook.append((first, last, city))

但现在,您希望能够按名字进行搜索。你可以这样做,但是对于一个巨大的通讯录来说,这可能会很慢,而且代码也不会很直接:

^{pr2}$

如果不只是元组列表,而是使用字典,将名字映射到另一个字段,会怎么样?在addressbook = {}

with open('addressbook.txt', 'r') as f:

for line in f:

name, city = line[:17], line[17:]

last, first = name.split(',')

addressbook[first]=((last, city))

但这不好每一个新的“约翰”都会抹去以前的“约翰”。所以我们真正需要的是一个字典,将名字映射到元组的列表中:addressbook = collections.defaultdict(list)

with open('addressbook.txt'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值