首页 新闻 会员 周边 捐助

读取excel文件时报错:openpyxl.utils.exceptions.InvalidFileException

0
[已解决问题] 解决于 2022-06-24 15:48

读取excel文件时报错:openpyxl.utils.exceptions.InvalidFileException,如何解决

醉一场的主页 醉一场 | 菜鸟二级 | 园豆:202
提问于:2022-06-24 10:38
< >
分享
最佳答案
0

你用的.xls格式吗,先转换成.xlsx格式再读取试下

奖励园豆:5
三人乐乐 | 老鸟四级 |园豆:4823 | 2022-06-24 10:53

文件格式就是.xlsx

醉一场 | 园豆:202 (菜鸟二级) | 2022-06-24 13:23

打佬,求指点

醉一场 | 园豆:202 (菜鸟二级) | 2022-06-24 13:32

@醉一场: 把你读取data.xlsx的代码贴出来

三人乐乐 | 园豆:4823 (老鸟四级) | 2022-06-24 13:52

@三人乐乐:
def read_excel(file_name,sheet_name):
wb=load_workbook(os.path.join(os.getcwd().split('APItest')[0],'APItest/data/'+'file_name'))
print(wb.worksheets)
ws=wb['sheet_name']
print(len(tuple(ws.rows))) # for x in range(1, ):
test_data=[]
for x in range(2,len(tuple(ws.rows)) + 1):
testcase_data=[]
for y in range(1,7):
testcase_data.append(ws.cell(row=x,column=y).value)
print(ws.cell(row=x,column=y).value)
test_data.append(testcase_data)
return test_data

醉一场 | 园豆:202 (菜鸟二级) | 2022-06-24 13:55

@醉一场: 这一行os.path.join(os.getcwd().split('APItest')[0],'APItest/data/'+'file_name')),用一个变量接收,看下值是什么

三人乐乐 | 园豆:4823 (老鸟四级) | 2022-06-24 14:18

@三人乐乐: 这是文件的路径

醉一场 | 园豆:202 (菜鸟二级) | 2022-06-24 14:22

@醉一场: 你拿打印出来的路径,能打开文件吗?

三人乐乐 | 园豆:4823 (老鸟四级) | 2022-06-24 14:27

@醉一场: 直接在文件夹地址上复制打开

三人乐乐 | 园豆:4823 (老鸟四级) | 2022-06-24 14:28

@三人乐乐: 不封装的话的可以,封装就不行了;不知道为啥

醉一场 | 园豆:202 (菜鸟二级) | 2022-06-24 14:35

@醉一场:

def read_excel(file_name,sheet_name):
    wb=load_workbook(os.path.join(os.getcwd().split('APItest')[0],'APItest/data/'+'file_name'))
    ....

file_name 既然是 function 接收的变量 为啥要用引号框起来?

〆灬丶 | 园豆:2314 (老鸟四级) | 2022-06-24 15:13

@醉一场: 另外 Windows 路径尽量避免使用 \ ,使用 \\/

〆灬丶 | 园豆:2314 (老鸟四级) | 2022-06-24 15:18

@〆灬丶: 下意识的就加了😂

醉一场 | 园豆:202 (菜鸟二级) | 2022-06-24 15:20

@〆灬丶: 好的

醉一场 | 园豆:202 (菜鸟二级) | 2022-06-24 15:21
其他回答(1)
0
楠木大叔 | 园豆:2083 (老鸟四级) | 2022-06-24 12:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册