2017-01-10 1 views
1

xlrd를 통해 Excel 파일의 첫 번째 시트 내의 모든 값을 읽으려고 시도하지만 Excel의 3 행에서 값을 읽기 시작해야합니다 시트는, 열의 값이 끝날 때까지XLRD : 특정 셀/범위 (파이썬)에서 열 읽기 시작

현재 버전이을 원하지 않는 , 헤더를 포함한 열 내의 모든 정보를 읽어

코드 :

for col in range(sheet.nrows): 
     names = sheet.cell(col,0) 
     nums = sheet.cell(col,1) 

     if names.value != xlrd.empty_cell.value: 
      if nums.value != xlrd.empty_cell.value: 
       f.write('\t\t\t\t\t\t\t\t\t'+ '<li><strong>' + names.value + '</strong> '+ repr(nums.value)+'</li>' + "\n") 
+1

'xlrd'의 행 번호 매기기가 '0'에서 시작하기 때문에 '범위 (2, sheet.nrows)의 행 :'이어야합니다. – Abdou

+1

좋은 지적. 명확한 답변을 편집했습니다. – zhqiat

답변

2

변경에 색인 코드 ..... for col in range(2,sheet.nrows):은 원하는 동작을 제공해야합니다.

사이드 바에서 변수의 이름을 바꾸어야합니다. 시트의 행 수에 대한 변수로 col을 사용하고 있습니다 (이로 인해 모든 혼란이 야기됩니다).

EDIT은 XLREAD가 0으로 색인됨을 나타냅니다.

+0

또한'name'을'name'으로,'nums'를'num'으로 변경합니다. –

+0

그랬습니다! 고맙습니다 –

관련 문제