방금 Python 2.7.12에서 xlrd를 사용하기 시작했으며 잘못된 작업을 파악할 수 없습니다. 데이터 형식이 일치하지 않는 것처럼 보입니다.Python 2.7 및 xlrd를 사용하여 Excel 스프레드 시트 행에서 특정 문자 시퀀스 검색
기본적으로 Excel 스프레드 시트 (.xlsx)에서 두 열의 일련의 행에 대한 문자 시퀀스를 찾고 있는데, 발견되면 해당 행 전체를 새 스프레드 시트로 복사하고 싶습니다. .
스프레드 시트와 같은 모양의 데이터 ...
R1: TheName_of_the_thing_XYZQ , Description of the thing with keyword1
R1: TheName_of_another_thing_61PD , Description of the thing with keyword2
그리고 여기 내가이 프로그램을 실행할 때
import xlrd
search_for = ['XYZQ', 'keyword2', 'foo', 'FOO']
book = xlrd.open_workbook('csv-test.xlsx')
i = 0
j = 0
sheet1 = book.sheet_by_index(1)
for i in range(sheet1.nrows):
row = sheet1.row_values(i)
for j in range(len(row)):
if row[j] == search_for:
print 'found it!'
else:
print 'sorry'
, 그것은 아무것도 발견하지 ... 내가 지금까지있어 무엇 search_for, 모든 행에 대해 '미안'을 인쇄합니다.
그래서 올바른 문서를 열고 각 행을 구문 분석하는 등의 작업을 수행합니다. 또한 cell_value 및 row_slice도 시도했습니다.
감사합니다!
귀하의 경우에는if row[j] == search_for:
, row[j]
유니 코드 형식으로 셀의 내용이며, 검색하려는 처음에 선언 된 목록입니다
, 지오다노 알려주세요! 고맙습니다! 필자가해야 할 일은 두 열 중 하나에서 일치하는 항목이 발견되면 해당 행의 두 열을 다른 스프레드 시트에 복사하려고합니다. 나는 그걸 알아낼 수 있다고 생각하지만, 빠른 생각이 있으면 알려주세요! –
당신을 도와 주어서 기쁩니다! btw, Excel 파일을 작성하려면 xlsxwriter 패키지를 사용할 수 있습니다. 간단하며 예제 나 튜토리얼을 온라인에서 쉽게 찾을 수 있습니다. 문제가 생기면 언제든지 twitter/github (내 프로필 참조)에 저에게 연락하십시오. – Giordano