吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 650|回复: 9
收起左侧

[经验求助] 遇到了一个python print pandas读取的问题

[复制链接]
Lengxiy 发表于 2024-3-27 16:19
30吾爱币
本帖最后由 Lengxiy 于 2024-3-27 16:21 编辑

我在写程序并且运行的时候遇到一个问题,当运行到data = pd.read_excel(excle_name)的时候,我发现会直接报错:
发生异常: SyntaxError
Missing parentheses in call to 'print'. Did you mean print(...)? (__init__.py, line 1187)
  File "C:\Users\23728\Desktop\临时文件\临时文件\python_do_excle\宿管评价.py", line 64, in open_and_check
    data = pd.read_excel(excle_name)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\23728\Desktop\临时文件\临时文件\python_do_excle\宿管评价.py", line 69, in <module>
    open_and_check()
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)? (__init__.py, line 1187)

但是当我将data = pd.read_excel(excle_name)中的excle_name变量,改为一个实际的比如“1.excel”地址的时候,它就不会报错,这是不是我电脑__init.py__模块出错了还是pandas模块出问题了

下面是我的部分源代码:
[Python] 纯文本查看 复制代码
def find_excel():

    files = os.listdir('.')

    # 筛选出Excel文件(假设Excel文件扩展名为.xlsx)
    excel_files = [file for file in files if file.endswith(".xlsx")]

    # 如果只有一个Excel文件,并且您想要获取该文件的文件名
    if len(excel_files) == 1:
        file_name = excel_files[0]
    else:
        return print("当前目录下有多个或没有Excel文件。")
    return file_name


def open_and_check():

    excle_name = find_excel()
    data = pd.read_excel(excle_name)
    print(data)

    pass

open_and_check()


报错截图在这里

我这个文件夹里面没有__init.py__文件,任何父级目录也莫得

最佳答案

查看完整内容

你觉得模块错了就更新模块,就一行代码,不是你的错自然是模块用的有问题。 比如这个模块代码怎么调用了python2的代码

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| Lengxiy 发表于 2024-3-28 09:11
本帖最后由 Lengxiy 于 2024-3-28 09:13 编辑

我自己最后解决了问题了,我没有更新模块,而是直接卸载掉了所有的模块,参考一下这个链接:如何快速一次性卸载所有python包(第三方库)呢?_python删除第三方库的命令-CSDN博客

任意的目录下cmd  输入:
[Bash shell] 纯文本查看 复制代码
pip freeze>modules.txt

写在完成后在输入:
[Bash shell] 纯文本查看 复制代码
pip uninstall -r modules.txt -y

这样子就卸载掉了所有的第三方的模块,再重新安装自己需要的模块就可以了,如何就可以运行了
zhuxiangyu1024 发表于 2024-3-27 16:19
你觉得模块错了就更新模块,就一行代码,不是你的错自然是模块用的有问题。 比如这个模块代码怎么调用了python2的代码
liuxinxin885 发表于 2024-3-27 16:57
excle_name 应该是一个变量
比如
excle_name=’2023-2024第二学期宿舍管理员满意度调查表.xlsx‘
把这一行加在函数里面第一行试试
heigeer 发表于 2024-3-27 17:09
可以试试
def find_excel():
    files = os.listdir('.')
    excel_files = [file for file in files if file.endswith(".xlsx")]
    if len(excel_files) == 1:
        return excel_files[0]
    else:
        print("当前目录下有多个或没有Excel文件。")
        return None
def open_and_check():
    excle_name = find_excel()
    if excle_name is not None:
        data = pd.read_excel(excle_name)
        print(data)
Focalors 发表于 2024-3-27 17:15

根据你提供的代码和描述,出现问题的原因可能是找不到或无法读取指定的 Excel 文件。这可能由于文件路径问题或 Excel 文件本身损坏等原因导致。当你手动将文件名直接指定为一个实际地址时,程序可能会成功,这表明问题可能出在文件路径的获取上。

你可以尝试在 find_excel() 函数中添加一些调试语句,检查它是否正确地返回了 Excel 文件的路径。另外,你也可以打印出 excle_name 变量的值,确认它是你期望的文件路径。

另外,确保你的环境中已经正确安装了 Pandas 库。如果你怀疑是 Pandas 出了问题,你可以尝试在 Python 中运行 import pandas 看看是否会报错。

最后,确保你的 Excel 文件路径不包含中文或特殊字符,以免出现路径解析问题。

devilpanama 发表于 2024-3-27 17:27
当存在多个文件时,file_name没有定义,返回会报错,而且return print是啥写法
 楼主| Lengxiy 发表于 2024-3-27 17:57
heigeer 发表于 2024-3-27 17:09
可以试试
def find_excel():
    files = os.listdir('.')

还是会报错原来的内容
 楼主| Lengxiy 发表于 2024-3-27 17:59
devilpanama 发表于 2024-3-27 17:27
当存在多个文件时,file_name没有定义,返回会报错,而且return print是啥写法

return print那一行就直接表示文件有多个,不需要运行,直接退出就好了
 楼主| Lengxiy 发表于 2024-3-27 18:00
Focalors 发表于 2024-3-27 17:15
[md]根据你提供的代码和描述,出现问题的原因可能是找不到或无法读取指定的 Excel 文件。这可能由于文件路 ...

我单点调试过我的程序,莫得啥问题,find_excel文件能够找到目录下的excel
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-15 03:46

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表