花香诱人醉。 2022-09-29 17:56 采纳率: 50%
浏览 12

python数据关联处理

python循环判断问题
filepath=r'C:\HOSTCONINFO.csv'
linuxfilepath=r'C:\11.csv'
linuxfilepathnew=r'C:\index_new.csv'
IPList={}
with open(filepath,'r',encoding='UTF-8') as f:
    title=f.readline()
    line=f.readline()
    while line:
        IPList[line.split(',')[3]]=','.join(line.split(',')[4:8])
        line=f.readline()
    print(IPList)

with open(linuxfilepath, 'r', encoding='UTF-8') as flinux:
    with open(linuxfilepathnew, 'w', encoding='UTF-8') as flinuxnew:
        # line = flinux.readline()#剔除空行

        title=flinux.readline()
        flinuxnew.write(title.split('\n')[0]+',项目,负责人,电话,组织\n')
        line = flinux.readline()
        line = line.split('\n')[0]
        while line:
            print(line.split(',')[0])
            try:
                print(IPList[line.split(',')[0]])
                if IPList[line.split(',')[0]] !=None:
                    if ';' in line.split(',')[0]:
                        for data in line.split(',')[0].split(';'):
                            try:
                                if IPList[line.split(',')[0]] !=None:
                                    flinuxnew.write(line.split('\n')[0] + ',' + IPList[line.split(',')[0]] + '\n')
                                    break
                                else:
                                    continue
                            except Exception as err:
                                print(str(err))
                                continue
                    else:
                        flinuxnew.write(line.split('\n')[0]+','+IPList[line.split(',')[0]]+'\n')
                else:
                    flinuxnew.write(line)
            except Exception as e:
                flinuxnew.write(line.split('\n')[0] + ',\n')
            line=flinux.readline()
            line = line.split('\n')[0]

文件1数据内容

img


文件2

img

我的解答思路和尝试过的方法

如果文件2里面有2个ip或者3个ip的话,匹配完后写不进去

img

我想要达到的结果

如果有2个或多个ip,ip是以冒号分隔的 (;) 先拿第一个去列表匹配,匹配不到,拿第二个去匹配,匹配到了写入新文件,匹配不到就跳过

img

现在是这么写的 不知道是没匹配上还是规则写错了,现在有多个ip的 匹配后数据没有写进去
  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-30 03:47
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 9月29日

悬赏问题

  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 划分vlan后不通了
  • ¥15 GDI处理通道视频时总是带有白色锯齿
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)
  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大