使用@classmethod的Python代码在Jupyter无输出但IDE正常问题求助
问题排查与解决
最可能的原因:工作目录不匹配
Jupyter Notebook的默认工作目录是你启动Notebook时所在的文件夹,而IDLE运行脚本时,默认工作目录是脚本文件所在的文件夹。如果你的item.csv放在脚本同目录,但Jupyter的工作目录不在那里,就会出现两种情况:
- 如果Jupyter工作目录下没有
item.csv,代码会直接报错;但你说无报错,说明这个目录下存在同名的空文件,或者你误把文件放错了位置,导致代码读取到空内容,自然没有输出。
解决步骤:
- 在Jupyter的代码单元格中运行以下代码,查看当前工作目录:
import os print(os.getcwd()) - 把你的
item.csv复制到这个目录下,或者修改代码中的文件路径为绝对路径,比如:with open('/Users/xxx/Documents/item.csv', 'r') as f:
其他小概率排查方向
- 确认代码单元格已执行:检查Jupyter单元格左侧是否有运行后的序号(比如
[1]),如果没有,说明代码没运行,点击运行按钮或用Shift+Enter执行即可。 - 尝试指定文件编码:部分情况下,Jupyter的默认文件编码和IDLE不同,可尝试指定编码打开文件:
with open('item.csv', 'r', encoding='utf-8') as f:
内容的提问来源于stack exchange,提问作者Ayan Dey
相关产品推荐
相关产品推荐

