cari

Rumah  >  Soal Jawab  >  teks badan

python获取环境变量问题

我在/etc/profile中写一个变量内容
echo 能取到这个值,但python的os.getenv(),不能取到,这是为咋的?

演示内容:

[root@vultrvpn ~]# vim /etc/profile
[root@vultrvpn ~]# source /etc/profile
[root@vultrvpn ~]# echo $ABC_TEST
ISNEILSI
[root@vultrvpn ~]# python
Python 2.7.5 (default, Nov  6 2016, 00:28:07) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.getenv("ABC_TEST")
>>> print os.getenv("ABC_TEST")
None

os.getenv("ABC_TEST")得到的值为空的。

巴扎黑巴扎黑2777 hari yang lalu558

membalas semua(2)saya akan balas

  • 高洛峰

    高洛峰2017-04-18 10:23:18

    Saya tidak tahu cara anda menetapkan nilai ABC_TEST Jika anda tidak menggunakan eksport, anda hanya menetapkan nilai dalam shell semasa.

    
    
    $ aaa="test_aaa"
    $ export bbb="test_bbb"
    $ echo $aaa
    test_aaa
    $ echo $bbb
    test_bbb
    $ python
    Python 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 darwin
    Type "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

    balas
    0
  • 迷茫

    迷茫2017-04-18 10:23:18

    Mungkin kerana persekitaran pelaksanaan PYTHON dan persekitaran shell bukanlah perkara yang sama.

    balas
    0
  • Batalbalas