鱼C论坛

 找回密码
 立即注册
查看: 3259|回复: 6

[已解决]请问Pycharm和Python解释器得到的结果不同如何处理?

[复制链接]
发表于 2023-1-5 06:43:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
如图所示:同样的程序在Pycharm中运行正常,符合我的一切要求。
可是当我使用python解释器运行的时候就报错。
后来我也找到了报错的原因,是因为 os.getcwd() 获取到的返回值在Pycharm 和 python解释器中的结果是不同的。
这样的问题我发现了好几个,比如说 pycharm 中的 sys.path 和 python 解释器中的返回值就不一样。pycharm中多了一个项目目录
为了保证程序在python解释器中的正常运行,导致我没法使用这个多出来的值。
那么问题来了。老师都说程序运行的结果以 python 解释器为准不能以pycharm为准。
岂不是说;我以后写的代码只能在pycharm中运行了吗???难道每写一个py文件都需要用python解释器在跑一遍?
像这样的情况该如何避免???
最佳答案
2023-1-5 08:40:55
本帖最后由 isdkz 于 2023-1-5 13:00 编辑

这不是在不同地方执行的问题,是工作目录的问题,你两个地方的工作目录都不一样怎么能比较呢

os.getcwd() 是用来获取当前工作目录的,也就是你在执行 python 文件的时候所在的目录,

你在 cmd 那里先切换到 pyt_bao 目录嘛,执行一下命令:
cd /d d:/py_bao

然后再执行 python 文件

建议你把 sys.path.append(os.getcwd() + '\\' + 'mm') 换成
sys.path.append(os.path.dirname(__file__))

这样就不会受工作目录的影响了
123.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-1-5 06:50:06 | 显示全部楼层
说了那么多废话;核心诉求只有一个。
在不修改代码的情况下,如何保证py文件能同时在python解释器和pycharm中运行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-1-5 08:40:55 | 显示全部楼层    本楼为最佳答案   

回帖奖励 +5 鱼币

本帖最后由 isdkz 于 2023-1-5 13:00 编辑

这不是在不同地方执行的问题,是工作目录的问题,你两个地方的工作目录都不一样怎么能比较呢

os.getcwd() 是用来获取当前工作目录的,也就是你在执行 python 文件的时候所在的目录,

你在 cmd 那里先切换到 pyt_bao 目录嘛,执行一下命令:
cd /d d:/py_bao

然后再执行 python 文件

建议你把 sys.path.append(os.getcwd() + '\\' + 'mm') 换成
sys.path.append(os.path.dirname(__file__))

这样就不会受工作目录的影响了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-1-5 08:50:05 | 显示全部楼层

回帖奖励 +5 鱼币

看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-5 09:43:19 | 显示全部楼层

回帖奖励 +5 鱼币

你的  python <绝对路径文件>  只是指明了 python 需要运行文件的地方,
而你的 os.getcwd() 获取的是当前工作路径,也就是 CMD 的路径。

你把两个概念弄混淆了。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-1-5 10:08:36 | 显示全部楼层
3楼说的对
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-1-5 13:00:10 | 显示全部楼层
建议你把 sys.path.append(os.getcwd() + '\\' + 'mm') 换成
sys.path.append(os.path.dirname(__file__))

这样就不会受工作目录的影响了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-25 01:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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