Python对环境变量的访问不能准确反映操作系统对流程环境的看法.

os.getenv和os.environ在特定情况下不能正常运行.

有没有办法正确地获得运行过程的环境?

为了演示我的意思,采用两个大致相同的程序(C中的第一个,python中的另一个):

#include

#include

#include

int main(int argc, char *argv[]){

char *env;

for(;;){

env = getenv("SOME_VARIABLE");

if(env)

puts(env);

sleep(5);

}

}

import os

import time

while True:

env = os.getenv("SOME_VARIABLE")

if env is not None:

print env

time.sleep(5)

现在,如果我们运行C程序并将其附加到运行的进程,并通过执行以下操作强制更改环境:

(gdb) print setenv("SOME_VARIABLE", "my value", 1)

[Switching to Thread -1208600896 (LWP 16163)]

$1 = 0

(gdb) print (char *)getenv("SOME_VARIABLE")

$2 = 0x8293126 "my value"

那么上述C程序将每5秒开始一次“我的价值”.然而,上述的python程序不会.

在这种情况下,有没有办法让python程序像C程序一样运行?

(是的,我意识到这是一个非常晦涩和潜在的破坏性行动,在正在运行的过程中执行)

另外,我目前正在使用python 2.4,这可能已经在更高版本的python中被修复了.

linux查看python环境变量_Linux中的Python环境变量相关推荐

  1. linux 查看硬盘报错_linux中挂载硬盘报错(you must specify the filesystem type)

    linux中挂载硬盘报错提示 you must specify the filesystem type ,意思是告诉我们必须要指定一个系统分区了,由于自己能看懂几句英文,所以解决起来也方便了,下面一起 ...

  2. linux 查看网络流量来源_linux中查看网卡流量六种方法

    方法一.nload工具 源码包路径: 查看参数帮助命令: nload –help -a:这个好像是全部数据的刷新时间周期,单位是秒,默认是300. -i:进入网卡的流量图的显示比例最大值设置,默认10 ...

  3. 【开发环境】Mac 中删除 Python ( 删除 Python 框架 | 删除 Python 应用程序 | 删除 Python 链接 )

    文章目录 一.删除 Python 框架 二.删除 Python 应用程序 三.删除 Python 链接 一.删除 Python 框架 首先到 /Library/Frameworks/Python.fr ...

  4. python之禅 中文_《Python之禅》中对于Python编程过程中的一些建议

    <Python之禅>中对于Python编程过程中的一些建议 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  <Python之禅>中对于Pyt ...

  5. linux python2.7安装教程_Linux中RedHat下安装Python2.7开发环境的详细教程-学派吧-

    这篇文章主要为大家详细介绍了Linux RedHat下安装Python2.7.pip.ipython环境.eclipse和PyDev环境,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 Linux ...

  6. linux中python怎么退出_linux 怎么退出python

    因为Python是跨平台的,它可以运行在Windows.Mac和各种Linux/Unix系统上.在Windows上写Python程序,放到Linux上也是能够运行的. 要开始学习Python编程,首先 ...

  7. linux如何查看python的版本_linux怎么改python默认版本

    1 查看当前python默认版本 小编以centos 7系统为例进行讲解.首先,在shell终端上输入命令: python --version 查看当前系统中,目前python默认采用的版本号. 2 ...

  8. 【开发环境】Windows 中安装 Python 各个版本 ( 下载 Python 各版本 SDK | 安装 Python )

    文章目录 一.下载 Python 各版本 SDK 二.安装 Python 1.安装 Python 2.7 2.安装 Python 3.6.8 ( 3.7 / 3.8 / 3.9 / 3.10 安装方式 ...

  9. windows下python环境搭建_Linux/Windows下Python环境搭建步骤

    Python环境搭建首先到官网(www.python.org)下载相应的安装版本.主要分为Windows和Linux两种: 一.Linux下Python环境搭建 一般情况下,Linux系统都已经预安装 ...

最新文章

  1. python能够做什么软件-python爬虫软件有哪些做的比较好的?
  2. WebBrowser控件判断完全加载中DocumentCompleted和Navigated的关系
  3. php编译自己库文件,php编译后追加库模块-gd库
  4. 用Math.random()方法生成随机数
  5. 这些假脸实在太逼真了!英伟达造出新一代GAN,生成壁纸级高清大图毫无破绽...
  6. idea中编辑*.vue文件没有任何提示
  7. 视频帧AI分析后编码
  8. python之禅源代码_python之禅
  9. 51nod 1429 巧克力
  10. 【Unity】 HTFramework框架(十七)Hotfix热更新模块
  11. MQTT Qos详解(一)
  12. nodejs进程守护神forever
  13. 解决机械+固态的电脑无法安装window10系统的问题
  14. minio 图片存储服务器的部署和使用
  15. 再见了 VMware,一款更轻量级的虚拟机!
  16. timing lib时序弧
  17. 运维自动化之ANSIBLE
  18. 【音视频基础】(三):俗称照片的彩色数字图像一
  19. 中级软件设计师考试错题及知识点整理
  20. Web自动化css选择器定位法实现

热门文章

  1. 索引与优化like查询
  2. SPCOMM的一些用法注意
  3. LINUX内核分析第八周总结:进程的切换和系统的一般执行过程
  4. 用C#2.0实现网络蜘蛛(WebSpider)
  5. 2021年最后几天,使用SSM实现网上购物商城系统
  6. JSP装状态管理 session cookie
  7. 修改Hadoop的日志级别
  8. HGOI20190808 省常中互测1
  9. Django-View中绕过RSCF验证
  10. C++ 使用copy_if获得数组vector掩膜