Prthon从本地读取excel文件,如何将获得的列表数据取出来?

Prthon从本地读取excel文件,如何将获得的列表数据取出来?

刚刚开始学习Python,对循环和列表不是很懂,自己练习从excel文件(获取的代码是从网上复制的),想把获取的列表内的数据用while循环打印出来。结果报错了,麻烦大家帮我看看怎么修改谢谢啦

import xlrd
from xlrd import xldate_as_tuple
import datetime

data1 = xlrd.open_workbook(r'D:\test.xlsx')
table = data1.sheets()[0]

tables = []

def import_excel(excel):

for test in range(excel.nrows):

array = [table.cell_value(test, 0), table.cell_value(test, 1),

table.cell_value(test, 2), table.cell_value(test, 3),

table.cell_value(test, 4)]

tables.append(array)

if name == '__main__':

import_excel(table)

for i in tables:

# pass

print(i)

num1 = tables[0]
num2 = tables[1]
num3 = tables[2]
num4 = tables[3]
num5 = tables[4]

nu1 = 1
while nu1 < num2:

print("%d\t%d\t%d\t%d\t%d" % (nu1, num2, num3, num4, num5))

nu1 = nu1 + 1

输出结果:
D:PythontestvenvScriptspython.exe D:/Python/test/test_excel.py
[2.0, 4.0, 6.0, 8.0, 10.0]
[1.0, 3.0, 5.0, 7.0, 9.0]
....
[3.0, 5.0, 7.0, 8.0, 10.0]
Traceback (most recent call last):
File "D:/Python/test/test_excel.py", line 33, in <module>

while nu1 < num2:

TypeError: '<' not supported between instances of 'int' and 'list'


回答:

这个报错的意思是 两个变量数据类型不同,一个 nu1 是 int 整型,一个 num2 是 list 列表类型 ,数据类型不同所以不能直接比较
第一次循环判断的时候 ,你是 用 nu1 < num2 比较
而 nu1 此时等于 1
num2 此时是个列表 [1.0, 3.0, 5.0, 7.0, 9.0]

你可以把 while nu1 < num2:
改为 while nu1 < len(num2):
这样应该就可以了。

顺便说一句,我也是菜鸟,

以上是 Prthon从本地读取excel文件,如何将获得的列表数据取出来? 的全部内容, 来源链接: utcz.com/p/937814.html

回到顶部