2016-07-28 3 views
0

두 파일 csv와 xls를 읽고 사용하려고하는 프로그램을 만들고 있습니다. IP/서브넷 매치를 기반으로 특정 열을 csv에서 xls로 구문 분석하고 전송하는 일부 Python 논리.두 파일 csv와 xls를 읽고 서브넷 (csv)/ip (xls)을 기반으로 csv에서 xls 열을 가져옴

csv로 컬럼 B, C 및 D (CSV 약 10K 행이 아닌 전체가 사용된다.)

XLS 열 C.의 IP 주소를 가지고있는 서브넷 마스크, CIDR을 가지고 (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 행에 가져옵니다.

죄송합니다. 혼란 스럽다면, 해결해야 할 혼란스러운 문제이며 저는 단지 파이썬 초보자입니다. 당신이

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] 

답변

0

시작하려면 파일은 XLS를 XLSX되지 않습니다. openpyxl 시도했지만 xls 형식으로 작동하지 않습니다.
+0

문제는이 스크립트를 시도 할 수와 – DaVinci

+0

https://www.sitepoint.com/using-python-parse-spreadsheet-data/ 이 가져 오기가 \t 통합 문서 = xlrd.open_workbook ('my_file_name.xls') \t 워크 시트 = 통합 문서를 xlrd하려고 할 수 있습니다 .sheet_by_name ('My_Sheet_Name') \t sheet.cell (0, 0) .value – Shijo

관련 문제