python 2.7 Tkinter读取环境变量

时间:2017-08-24 18:02:07

标签: python bash tkinter

我是新手在pythyon 2.7中使用Tkinter并且无法读取我在覆盆子pi上定义的环境变量。
我已经阅读了大多数问题是因为环境变量没有导出,但不确定这是我的问题。有人能告诉我我做错了吗?

python应用程序是从bash脚本运行的

这样可行,我可以运行bash脚本并回显环境变量的内容。

#!/bin/bash
export USR_USR
echo $USR_USR
python netid_button2.py

当我使用一个非常简单的python脚本并使用Tkinter时,我可以读取环境变量PATH。

#!/usr/bin/python

import Tkinter
import os

top = Tkinter.Tk()

vusr_usr = get('PATH')
user_envd = open('user_envd.txt','w+')
user_envd.write('v_usr= ' + str(vusr_usr) + '\n')
user_envd.close()

top.mainloop()

这不起作用。我无法读取为我的应用程序创建的环境变量。

#!/usr/bin/python

import Tkinter
import os

top = Tkinter.Tk()

vusr_usr = get('USR_USR')
user_envd = open('user_envd.txt','w+')
user_envd.write('v_usr= ' + str(vusr_usr) + '\n')
user_envd.close()

top.mainloop()

1 个答案:

答案 0 :(得分:1)

假设你有一个环境变量FOO,它在bash中设置为:

export USR_USR=somevalue

这是你在python中访问相同环境变量的方法:

import os

print os.environ["USR_USR"]

"somevalue"

你的python程序的其余部分将能够访问该环境变量