我在使用.bash_profile
和Pycharm时遇到一些问题。我使用的是Mac OSX。我使用带有基本解释器/usr/local/bin/python3.5
的virtualenv在新环境下的pycharm上创建了一个新项目。
步骤1:
然后,我从Mac OS终端访问.bash_profile,并导出了两个变量:DB_USER
和DB_PASS
分别为my_db_user
和my_db_pass
。
步骤2:
使用Pycharm,我导入了os,然后使用os.environ.get()
打印出2个变量。使用pycharm(F10)运行.py文件将返回my_db_user
和my_db_pass
。
当我决定在虚拟环境中创建两个新变量test user
和test pass
时,我着手在pycharm的外壳中激活我的venv(venv/bin/activate
)。然后,我删除了在STEP 1中所做的更改。
但是,使用pycharm(F10)STILL运行.py会返回my_db_user
和my_db_pass
而不是test user
和test pass
(我已经删除了my_db_user
和my_db_pass
,所以我不知道它从哪里来!)。最重要的是,当我使用python test.py在外壳上运行python文件时,它返回(None,None)而不是我想要的test user
和test pass
。
我需要帮助来解决这个问题,以便os.environ.get()
返回我想要的输出。一个可能的原因是,我可能对pycharm,pycharm中的shell和终端如何交互感到困惑。请帮忙谢谢!
import os
user = os.environ.get('DB_USER')
password = os.environ.get('DB_PASS')
print(user,password)
答案 0 :(得分:4)
如果我正确阅读了您的信息,则说明您已经清除了.bash_profile
文件,因此剩下的只是运行中了
unset DB_USER DB_PASS
在每个仍具有环境变量的shell窗口中。