GoAI 2022-08-06 13:44 采纳率: 100%
浏览 147
已结题

python两列数据以相同第一列合并问题

python实现将一个txt文本中两列数据 (\t分割),以第一列名字相同合并,第二列以逗号分隔并以列表形式返回。

txt内容:

示例
txt文本链接:https://pan.baidu.com/s/1pg58MLXPgLot3J7Fc0zKAA?pwd=1234 提取码:1234

img

我想要达到的结果 (注:第二列最外边加一层列表括号)

img

  • 写回答

2条回答 默认 最新

  • 请叫我问哥 Python领域新星创作者 2022-08-06 13:57
    关注

    如果有编码问题改一下编码方案

    with open('a.txt',encoding='utf-8') as f:
        p = f.readlines()
    
    res = {}
    for i in p:
        a, b = i.split('    ')
        res.setdefault(a,list()).append(b.strip())
    
    with open('b.txt','w') as f:
        for i,j in res.items():
            f.write(f'{i}\t{j}\n')
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 快乐小土狗 2022-08-06 13:57
    关注

    提供一个思路,以\t分割,
    创建一个空字典 a_dict
    然后循环分割后的列表:
    在以.png进行分割,把分割的第一部分作为a_dic的键,将第二部分转为字典格式,然后作为对应健的值,
    在你每次循环的时候,判断分割下来第一部分是否已经存在为a_dic的键了,没存在就第二部分转为字典格式直接存为对应值,
    如果存在,就将第二部分转为字典格式,然后与a_dict对应键值的字典合并

    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月14日
  • 已采纳回答 8月6日
  • 创建了问题 8月6日

悬赏问题

  • ¥30 矩阵分析与古诗词意境
  • ¥15 在win10 64位的vs打包MSI文件,放到win7 64位上安装成可执行exe文件后,点击程序不运行。
  • ¥50 大众点评用户浏览/消费记录爬虫
  • ¥15 求制作一个个人网页,
  • ¥15 寻涂色内存脚本作者有项目有市场有资源.却技术
  • ¥15 蓝桥杯c51单片机问题
  • ¥15 ajax跨域问题请求修改代码
  • ¥15 python matplotlib
  • ¥15 短信测压+语音,有偿,必须用Python
  • ¥20 COCOS2DX的protobuf协议注册函数问题