pycharm获取不到环境变量

在Win10 20H2系统上,使用PyCharm 2020.3时遇到一个问题,即在启动PyCharm后添加的环境变量无法通过os.environ.get()和os.getenv()在PyCharm内部获取。问题在于子进程不会实时继承父进程(操作系统)的环境变量变化。解决方法是重新启动PyCharm以使改动生效。如果在启动PyCharm前设置环境变量,则可以在PyCharm内正常读取。此外,直接用其他软件运行Python脚本则能正确获取环境变量。
部署运行你感兴趣的模型镜像

win10 20H2,pycharm2020.3

启动pycharm后,再添加环境变量,然后在pycharm里获取不到os.environ.get()和os.getenv(),打印它们的类型为None。但添加环境变量后,再另外写一个py文件,不要用pycharm运行它,用其他软件运行,可以获取到环境变量。

若是在启动pycharm前,就已经添加了环境变量,那上面的方法可以获取到。

所以若是pycharm获取不到环境变量,就重启pycharm。

可能的原因在参考链接5:When any process get created it inherit the environment variables from it's parent process (the O.S. itself in your case). if you change the environment variables at the parent level, the child process is not aware of it.

机翻:当任何进程被创建时,它会从它的父进程继承环境变量(在你的情况下是操作系统本身)。如果您在父级别更改环境变量,则子进程不知道。

参考链接里在pycharm中添加环境变量,而不是在系统中添加,这种方法我这不行,还是获取不到。参考链接1参考链接2参考链接3参考链接4参考链接5

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

### PyCharm调试模式下查看变量值的解决方案 当在PyCharm中遇到调试时无法看到变量值的情况,通常会显示`collecting data`并最终报错`Timeout waiting for response`。这可能是由于多种因素引起的,包括但不限于性能瓶颈、配置错误或特定数据类型的处理方式。 #### 方法一:调整超时设置 为了防止因等待时间过长而导致的数据收集失败,可以增加PyCharm调试器的响应超时时间。通过修改IDEA文件夹下的`idea.properties`文件来实现这一目标: ```properties # 设置更大的超时值(单位秒) debugger.collect.data.timeout=60 ``` 此操作有助于缓解由网络延迟或其他外部条件造成的短暂连接中断问题[^1]。 #### 方法二:优化项目结构与依赖管理 有时复杂的项目结构或是过多不必要的库导入也会拖慢整个环境的表现效率。因此建议定期清理不再使用的第三方包以及简化模块间的相互调用关系;另外确保所使用的解释器版本是最新的稳定版也很重要[^2]。 #### 方法三:针对TensorFlow等框架特殊处理 对于像TensorFlow这样的机器学习框架来说,默认情况下某些张量对象可能不会完全展开显示其内部数值。此时可以通过手动转换成NumPy数组的形式来进行观察。具体做法是在断点处暂停执行后,选中感兴趣的张量变量,利用上下文菜单中的`Evaluate Expression...`选项卡输入如下表达式再求值即可获得更直观的结果展示形式: ```python import numpy as np np.array(tensor_variable_name) ``` 之后还可以进一步选择以表格视图的方式呈现多维矩阵型态的数据集[^3]。 以上就是关于如何有效解决PyCharm调试期间难以获取到预期变量信息的一些实用技巧汇总。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值