【发布时间】:2020-03-29 07:28:34
【问题描述】:
我正在介绍如何使用 python 编写脚本类。我没有编程经验,所以我只知道该课程所教的内容,主要是 for 和 while 循环、基本函数、列表/字典以及当前的正则表达式和文件处理。
我收到了一个我必须打开的文件 P。我必须搜索变量 F(名字)和 L(姓氏),然后将关联的生日切换到 F,将 L 切换到 B(生日)。
每个名字的长度为 16 个字符。每个姓氏长度为 16 个字符。每个生日长度为 8 个字符。因此,每条记录的长度正好是 40 个字符。
下面的代码是我迄今为止将文件放入二维列表的代码。然后我如何搜索列表以找到 F 和 L?找到F和L后,如何将生日切换到B?希望这一切都有意义。提前谢谢你。
import re
file = open (P, 'r')
data = file.read()
records = []
while len(data) > 0:
record = []
record.append(data[0:16])
record.append(data[16:32])
record.append(data[32:40])
records.append(record)
data = data[40:]
【问题讨论】:
-
你能提供一个你得到的文本文件的例子吗?
-
看起来您有一个程序可以满足您的所有需求。您需要什么帮助?
-
@user1558604 他正在寻找
append(B)到正确的name([F + L]) -
@CanadianCaleb,但他有一个 2D 列表 (
records),类似于[[F,L,B],[F,L,B]...]。至少我是这样理解的。如果他在寻找F+L+B,那么就是这40个字符加起来。 -
@user1558604 是的,我不太清楚它是怎么回事,这就是为什么我要一个例子。
标签: python search replace record