首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python在Dic的CSV中查找和替换/追加

Python在Dic的CSV中查找和替换/追加
EN

Stack Overflow用户
提问于 2014-06-12 03:28:51
回答 1查看 74关注 0票数 1

我有一个包含四列的csv文件。其中一列(第三列)是IP地址。这些IP属于某些公司。我正在尝试查找IP地址的实例,并将公司名称附加到IP地址的末尾。

CSV示例

代码语言:javascript
复制
   Time,Origination,IP Address, Destination
    6/11/14 14:45,1234567890,1.2.3.4,0987654321

我想要的:

代码语言:javascript
复制
    Time,Origination,IP Address, Destination
    6/11/14 14:45,1234567890,1.2.3.4 **"CUSTOMERNAME"**,0987654321

THis是我的代码...真是一团糟。

代码语言:javascript
复制
    import pandas
    import xlrd
    import csv
    import os

    def replace_ip(file, dic):
        spoofingFile = open('spoofing.csv','wb')
        wr = csv.writer(spoofingFile, quoting=csv.QUOTE_ALL)
        for i, j in dic.iteritems():

    ^^^^ I DONT KNOW HOW TO DO THIS! ^^^^^^        


    def csv_from_excel():

        wb = xlrd.open_workbook("C:\\Python27\\Work\\spreadsheet.xlsx")
        sh = wb.sheet_by_name('Sheet1')
        spoofingFile = open('spoofing.csv', 'wb')
        wr = csv.writer(spoofingFile, quoting=csv.QUOTE_ALL)

        for rownum in xrange(sh.nrows):
            wr.writerow(sh.row_values(rownum))

        spoofingFile.close()


    csv_from_excel()
    df = pandas.read_csv('C:\\Python27\\Work\\spoofing.csv')
    df = df.sort("Orig IP Address")
    headers = ["InviteTime (Oracle)","Orig Number","Orig IP Address","Dest Number"]
    df.to_csv('output.csv', cols=headers, index=False)
    os.remove("c:\\python27\\work\\spoofing.csv")
EN

回答 1

Stack Overflow用户

发布于 2014-06-12 04:08:47

替换函数会不起作用吗?

代码语言:javascript
复制
def replace_ip(path,ip,name):
    fin = open(path)
    inserted = [i.replace(ip,ip+name) for i in fin.readlines()]
    fin.close()
    fout = open(path,"w")
    fout.write("\n".join(inserted))
    fout.close()
#example
#replace_ip("test.csv","1.2.3.4","COMPANYNAME")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24171066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档