在循环中调用表格名称

4 投票
1 回答
3649 浏览
提问于 2025-04-17 06:59

我已经导入了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个工作表,我想知道怎么在同一个循环里遍历这些工作表,现在我只写了'sh1'。

如果这个问题太简单了,我很抱歉!

1 个回答

8

在编程中,有时候我们会遇到一些问题,比如代码运行不正常或者出现错误。这种情况可能会让人感到困惑,但其实大多数时候,我们只需要仔细检查代码,看看哪里出了问题。

首先,确保你理解每一行代码的作用。如果有不明白的地方,可以查阅相关资料或者问问别人。其次,调试代码是一个很重要的步骤。你可以通过打印一些变量的值,来看看程序在运行时的状态,这样可以帮助你找到错误的根源。

另外,保持代码的整洁和规范也是很重要的。这样不仅能让你自己更容易理解,也能让其他人更容易阅读你的代码。最后,遇到问题时不要气馁,编程就是一个不断学习和解决问题的过程。

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))

撰写回答