Вызов имен листа для цикла while - PullRequest
4 голосов
/ 24 ноября 2011

Я импортировал xlrd и т. Д. Основная часть моего кода выглядит следующим образом:

for serie_diam in range(0,9):
namesheet = "Diamètre " + str(serie_diam)
#select(namesheet)
numLine = sh.row_values(3)
OK = 1
while OK == 1:
    d = sh1(numLine, 1)
    D = sh1(numLine, 2)
    rs = sh1(numLine, 7)
    for i in range(4):
        BB = sh1(numLine, 2 + i)
        if BB != 0:
            print repr(d).rjust(2), repr(D).rjust(3), repr(B).rjust(4), repr(rs).rjust(5)

Всего в моем файле xls 7 листов, и я хотел бы знать, как я могу просмотреть их в том же цикле while, как и OK == 1, где на данный момент я написал просто 'sh1'.

Извините, если этот вопрос слишком прост!

1 Ответ

7 голосов
/ 24 ноября 2011
import xlrd

book = xlrd.open_workbook('xlrd_test.xls')

for sheet in book.sheets():
    print sheet.row(0) # do stuff here - I'm printing the first line as example

# or if you need the sheet index for some purpose:
for shidx in xrange(0, book.nsheets):
    sheet = book.sheet_by_index(shidx)
    # would print 'Page N, first line: ....'
    print 'Page %d, first line: %s' % (shidx, sheet.row(0))
...