使用pd.read_excel读取Excel文件时触发print语法错误的问题排查
解决pd.read_excel触发SyntaxError(print缺括号)问题
问题本质
报错看似指向你的脚本,但实际是Python版本不兼容导致的:
- 你的脚本采用Python3语法(
print(df)带括号),但运行脚本的环境是Python2; - Pandas的
read_excel依赖的库(如xlrd)或自身代码中,存在Python2风格的无括号print语句,Python3解释器执行时会触发SyntaxError; pd.read_csv无需调用这些有问题的依赖代码,因此能正常运行。
解决步骤
检查当前Python版本
在终端执行命令确认默认Python版本:python --version若显示Python 2.x,说明你用Python2运行了Python3语法的脚本。
用Python3环境运行脚本
- 直接指定Python3解释器:
python3 /opt/homebrew/DataM/test.py - 或在脚本开头添加shebang指定Python3:
#!/usr/bin/env python3 import pandas as pd df = pd.read_excel('file_path_name.xlsx') print(df) - 给脚本添加可执行权限后直接运行:
chmod +x /opt/homebrew/DataM/test.py ./test.py
- 直接指定Python3解释器:
安装适配Python3的Pandas
避免混用Python2和Python3的包管理器,执行:pip3 install pandas补充:安装Excel读取依赖
若切换Python3后仍无法读取Excel,安装对应引擎:# 支持.xlsx格式 pip3 install openpyxl # 支持.xls格式 pip3 install xlrd
内容的提问来源于stack exchange,提问作者thisisme1321
相关产品推荐
相关产品推荐

