求详细解析字典,不太明白~
例如: a.txt1 a
1 b
3 a
3 c
3 e
4 x
4 y
.......
获得文件b.txt
1 a b
3 a c e
4 x y
......
用字典的方式,求详解(中间均为Tab分隔) 鱼币
看看这个可行不:
# 定义字典
word_dict = {}
# 读取文件内容
with open('a.txt',encoding='utf-8') as file:
# 切割文件编号与单词
temp =
# 通过 for 循环将对应切割后的数据取出
for key,value in temp:
# 这里转为 int 型是为了在写入 b 文件时候能进行排序后写入 b 文件
key = int(key)
# 判断若键已经在字典中,就添加入对应的值列表中去
if key in word_dict:
word_dict.append(value)
continue
# 反正直接创建个键值对
word_dict =
# 新建写入 b 文本文件
with open('b.txt','w',encoding='utf-8') as file:
# 读取字典对应键值,转为列表,以便排序
item = list(word_dict.items())
# 这里对编号进行列表排序
item.sort(key=lambda x:x)
# 最后循环对应的值写入文件中去
for key,value in item:
# 这里因为上个文件读取时候转化为了 int 型了,但是写入文件只能为 str 字符串,所以转化为字符串
key = str(key)
# 最终写入文件中去,\t 进行分隔,最后加 \n 是为了换行,防止写入一行
file.write(key+'\t'+'\t'.join(value)+'\n') 鱼币 学习啦
页:
[1]