python获取环境变量问题
问题描述
我在/etc/profile中写一个变量内容echo 能取到这个值,但python的os.getenv(),不能取到,这是为咋的?
演示内容:
[root@vultrvpn ~]# vim /etc/profile[root@vultrvpn ~]# source /etc/profile[root@vultrvpn ~]# echo $ABC_TESTISNEILSI[root@vultrvpn ~]# pythonPython 2.7.5 (default, Nov 6 2016, 00:28:07) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2Type 'help', 'copyright', 'credits' or 'license' for more information.>>> import os>>> os.getenv('ABC_TEST')>>> print os.getenv('ABC_TEST')None
os.getenv('ABC_TEST')得到的值为空的。
问题解答
回答1:我不知道你的 ABC_TEST 是怎么赋值的,不使用export 的话,只是在当前的shell里面赋值哦!
$ aaa='test_aaa'$ export bbb='test_bbb'$ echo $aaatest_aaa$ echo $bbbtest_bbb$ pythonPython 2.7.10 (default, Jul 30 2016, 19:40:32)[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwinType 'help', 'copyright', 'credits' or 'license' for more information.>>> import os>>> os.getenv('aaa')>>> os.getenv('bbb')’test_bbb’>>> print os.getenv('aaa')None>>> print os.getenv('bbb')test_bbb回答2:
大概是因为PYTHON执行的环境和shell环境不是同一个东西。
相关文章:
1. debian - docker依赖的aufs-tools源码哪里可以找到啊?2. html5 - node静态资源服务器设置了Cache-Control,但浏览器从来不走3043. docker start -a dockername 老是卡住,什么情况?4. 关于docker下的nginx压力测试5. docker安装后出现Cannot connect to the Docker daemon.6. docker镜像push报错7. docker内创建jenkins访问另一个容器下的服务器问题8. 为什么我ping不通我的docker容器呢???9. nignx - docker内nginx 80端口被占用10. dockerfile - 为什么docker容器启动不了?

网公网安备