Windows10下使用Python,flask框架编写web网站:
在使用环境变量来配置多环境时,发现os.environ[‘ops_config’]无法取到环境变量(ops_config是在终端使用命令行命令set设置的环境变量),报错如下:
raise KeyError(key) from None
KeyError: ‘ops_config’
意思是os.environ中并没有这个键值
在查阅相关博客后,原因可能是pycharm自身的某些原因,然后使用了改设置中的Python Console中环境变量的方式,如下:
或者在右上角运行图标旁Edit Configurations中修改相应入口文件中的环境变量
很遗憾,这两种对我来说并没有起到作用,因为我发现这样设置后在使用pycharm里面的运行图标或者run时,设置的环境变量才可以被取到,而我使用了manager启动web服务的方式,一般是在终端下面使用命令行启动的,比如:python manager.py runserver,所以索性直接在系统设置里面添加系统环境变量:
再启动pycharm,这时就能正常取到ops_config环境变量了,并且在终端使用set修改该变量之后再在终端运行时,ops_config的修改是起作用的,但是此时如果是使用pycharm里面带的启动功能的话,ops_config仍然是取local的,说明pycharm启动和使用终端启动对环境变量的取值是有差别的,小菜鸡一枚,也太不懂其中的原理。。。