我是python中的一个彻头彻尾的noob:如何重构下面的代码,使dictionaryd实际上是文件系统中的一个文件,如果在fr中找到新的电子邮件地址,它将被一封电子邮件和下一个增量int id追加到文件系统中?你知道吗
这是fr文件的文件结构:
7@comp1.COM|4|11|GDSPV
7@comp1.COM|16|82|GDSPV
13@comp1.COM|16|82|GDSPV
下面是我的程序。。它用ID屏蔽电子邮件地址。 注意,目前,我已经硬编码了d字典。你知道吗
d= {
'7@comp1.COM': '199',
'8@comp4.COM': '200',
'13@comp1.COM': '205'
}
fr = open(sys.argv[1], 'r')
fw = open("masked_"+sys.argv[1], 'w')
cnt = 0
i = 1
line_list = []
for line in fr:
columns = line.split("|")
looking_for = columns[0] # this is what we need to search
if looking_for in d:
# by default, iterating over a dictionary will return keys
new_line = d[looking_for]+'|'+'|'.join(columns[1:])
line_list.append(new_line)
fw.writelines(line_list)
fr.close()
fw.close()
我也想通过这个程序发送多个文件。成百上千的人在使用通配符或者类似的(*)作为fr文件读取器。你能把它包括在解决方案中吗。谢谢!!!你知道吗
我对解决方案进行了编码。你知道吗
I would like to maintain and persist the dictionary d in a file.
pickle
Also I would like to send multiple files through this program.
glob
看看python^{} 模块。它是一个字典类型的对象,持久存在于文件系统中(在后台使用pickle)。你知道吗
相关问题 更多 >
编程相关推荐