yywwf2003 发表于 2021-1-18 09:17:58

请教大佬们,这个python合并EXCEL,哪个出错了

本帖最后由 yywwf2003 于 2021-1-18 10:12 编辑

如图,网上按别人的代码对着输入的,别人的行,为什么到自己就出错了,说第六行出错了,跪求大佬帮解答一下,非常感谢!!!

import os
import pandas as pd
files = os.listdir("练习文件夹")
new_list = []
for i in files:
    new_list.append(pd.read_excel("练习文件夹\\" + i))
res = pd.concat(new_list)
res.to_excel("结果文件.xlsx",index=False)

E:\pythonProject\venv\Scripts\python.exe E:/pythonProject/test.py
Traceback (most recent call last):
File "E:/pythonProject/test.py", line 6, in <module>
    new_list.append(pd.read_excel("练习文件夹\\" + i))
File "E:\pythonProject\venv\lib\site-packages\pandas\util\_decorators.py", line 299, in wrapper
    return func(*args, **kwargs)
File "E:\pythonProject\venv\lib\site-packages\pandas\io\excel\_base.py", line 336, in read_excel
    io = ExcelFile(io, storage_options=storage_options, engine=engine)
File "E:\pythonProject\venv\lib\site-packages\pandas\io\excel\_base.py", line 1074, in __init__
    import_optional_dependency(
File "E:\pythonProject\venv\lib\site-packages\pandas\compat\_optional.py", line 115, in import_optional_dependency
    version = _get_version(module)
File "E:\pythonProject\venv\lib\site-packages\pandas\compat\_optional.py", line 56, in _get_version
    raise ImportError(f"Can't determine version for {module.__name__}")
ImportError: Can't determine version for openpyxl

Process finished with exit code 1

Twilight6 发表于 2021-1-18 09:22:10


第六行用两个 \\ 进行转义,不然双引号被转义导致报错字符串少了个引号导致报错

new_list.append(pd.read_excel("练习文件夹\" + i))
改成:
new_list.append(pd.read_excel("练习文件夹\\" + i))

这样试试看

qq1151985918 发表于 2021-1-18 09:22:33

本帖最后由 qq1151985918 于 2021-1-18 09:27 编辑

import os
import pandas as pd
files = os.listdir("练习文件夹")
new_list = []
for i in files:
    new_list.append(pd.read_excel("练习文件夹\\" + i))#加一条反斜杠
res = pd.concat(new_list)
res.to_excel("结果文件.xlsx",index=False)

suchocolate 发表于 2021-1-18 09:23:19

本帖最后由 suchocolate 于 2021-1-18 09:45 编辑

估计是双反斜杠问题
new_list.append(pd.read_excel("练习文件夹\\\" + i))
不行的话把你的报错信息发上来。

qq1151985918 发表于 2021-1-18 09:29:08

为啥我加了反斜杠代码显示不出来?

suchocolate 发表于 2021-1-18 09:45:52

qq1151985918 发表于 2021-1-18 09:29
为啥我加了反斜杠代码显示不出来?

论坛code估计也开启了转义

qq1151985918 发表于 2021-1-18 09:48:13

suchocolate 发表于 2021-1-18 09:45
论坛code估计也开启了转义

现在论坛里经常性出现bug,比如复制帖子链接也会经常出错等等,我有一次发的代码平白无故少了两个空格,还好不是在缩进处出的问题。

yywwf2003 发表于 2021-1-18 10:10:55

suchocolate 发表于 2021-1-18 09:45
论坛code估计也开启了转义

我也是加了反斜杆,也是不行

yywwf2003 发表于 2021-1-18 10:13:31

suchocolate 发表于 2021-1-18 09:45
论坛code估计也开启了转义

好像没有权限上传图片,平时网站也用得少,不是很懂网站上传图片,只能复制原出错显示出来。见谅

yywwf2003 发表于 2021-1-18 10:48:48

qq1151985918 发表于 2021-1-18 09:48
现在论坛里经常性出现bug,比如复制帖子链接也会经常出错等等,我有一次发的代码平白无故少了两个空格, ...

我本来代码是有两条反斜杠的,复制上来就变成一条了

qq1151985918 发表于 2021-1-18 11:01:20

yywwf2003 发表于 2021-1-18 10:48
我本来代码是有两条反斜杠的,复制上来就变成一条了

那你检查一下你有没有 练习文件夹 这个 文件夹,没有就创建一个
看看你的文件夹里面有没有excel文件,没有也新建几个

yywwf2003 发表于 2021-1-18 13:34:39

qq1151985918 发表于 2021-1-18 11:01
那你检查一下你有没有 练习文件夹 这个 文件夹,没有就创建一个
看看你的文件夹里面有没有excel文件,没 ...

这个练习文件夹是有的,文件夹下的EXCEL文件也是有的。就是运行提错,不懂问题在哪里。

qq1151985918 发表于 2021-1-18 13:39:53

这报错跟你代码没关系啊,这不是说了么模块 openpyxl 版本不对,先卸载再安装试试

Cool_Breeze 发表于 2021-1-18 18:02:31

File "E:\pythonProject\venv\lib\site-packages\pandas\compat\_optional.py", line 56, in _get_version
    raise ImportError(f"Can't determine version for {module.__name__}")
ImportError: Can't determine version for openpyxl

你打开【_optional.py】看一下【56行】源代码导入了什么!

yywwf2003 发表于 2021-1-18 20:12:24

Cool_Breeze 发表于 2021-1-18 18:02
File "E:\pythonProject\venv\lib\site-packages\pandas\compat\_optional.py", line 56, in _get_version ...

谢谢大佬
页: [1]
查看完整版本: 请教大佬们,这个python合并EXCEL,哪个出错了