繁体   English   中英

读取两个文件,一个csv和xls,并根据子网(csv)/ ip(xls)匹配将列从csv带到xls

[英]Reading two files, a csv and xls, and bring columns from csv to xls based on subnet(csv)/ip(xls) match

我正在尝试制作一个程序,该程序读取两个文件,一个csv和xls,并使用一些python逻辑,基于ip /子网匹配,将某些列从csv解析并传输到xls。

csv在B,C和D列中具有子网,掩码和cidr。(csv约有1万行,不会全部使用。)

xls在C列中有一个IP地址。(xls有5009行),每个IP地址都对应于它所在的子网。

例如,csv colB,C,D中的以下信息:

subnet        mask          cidr
10.120.10.0  255.255.255.0  /24

对应于xls colB中的此信息(这些ip不连续。它们在随机行上。)

10.120.10.12
10.120.10.13

我需要移植到xls文件的csv中的列是G,H,I,K和M。

我正在尝试找到一种方法来将xls文件中的每个ip匹配到csv中的子网,并将csv列G,H,I,K和M中的数据带到xls中相应ip的行。

抱歉,这很令人困惑,这是一个令人困惑的问题,我只是python的初学者。

首先,您可以尝试以下脚本

import openpyxl
from xlrd import open_workbook
import csv

#To read XLX

book = open_workbook('IPADR.xlsx')
sheet = book.sheet_by_index(0)
keys = [sheet.cell(row_index, 0).value for row_index in xrange(sheet.nrows)]
print keys

# To read Csv 

exampleFile = open('sample.csv')
exampleReader = csv.reader(exampleFile)
for row in exampleReader:
        print row[0]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM