文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

在Anaconda的虚拟环境中添加环境变量并通过python访问(win/mac/linux)

2023-08-31 17:45

关注

一、前言

  1. 有的时候密码登比较敏感的信息,不方便直接写在代码里

  2. 有很多变量我想很多project都可以访问到

那这时候使用环境变量是非常合适的了。

二、设置环境变量

以linux为例

  1. 直接在internal执行命令 export 变量=值

  2. 通过更改bashc文件

vim ~/.bashrc# 在最后一行加上 # 通过按i进行插入以下,之后填完通过esc之后:qw! 保存退出export 变量=值# 例如:export PATH=$PATH:/home/che/bin# 让新加的环境变量生效source ~/.bashrc

在代码里访问:(以python为例)

import osvalue = os.getenv(key)

mac类似:

2b8110c448435d89a6a945e37001a763.png

三、conda情况下

如果没有conda的情况下,直接在环境下这么做,getenv是没问题的

但是如果你用conda去create一个env,在这个env下如果在用这种方法去创建环境变量是不可行的。

就算是你已经source activate new_env进入新环境去export一个变量,依然还是在base环境中加入的环境变量,在new_env不起作用,new_env虚拟环境有一个独立的虚拟环境变量空间。

3.1 在mac和linux执行以下语句可以解决这个问题:

  1. 先执行,得到这个new_env的路径

echo $CONDA_PREFIX
0bc8961d59240b6551df3b262c41cb93.png
  1. 得到这个path之后,创建这些文件

cd $CONDA_PREFIXmkdir -p ./etc/conda/activate.dmkdir -p ./etc/conda/deactivate.dtouch ./etc/conda/activate.d/env_vars.shtouch ./etc/conda/deactivate.d/env_vars.sh
  1. 编辑这个./etc/conda/activate.d/env_vars.sh文件(vim即可)

#!/bin/shexport KEY=VALUE
  1. 之后编辑 ./etc/conda/deactivate.d/env_vars.sh文件

#!/bin/shunset KEY
  1. 重启环境

source avtivate new_env

如果这样配置在source activate new_env执行后,环境变量KEY开始生效

在执行conda deactivate,KEY被释放掉

这样你在进入new_env之后,在用get_env("KEY")的时候就可以获得对应的VALUE值了

3.2 windows下

得到路径

%CONDA_PREFIX%
  1. 创建文件

cd %CONDA_PREFIX%mkdir .\etc\conda\activate.dmkdir .\etc\conda\deactivate.dtype NUL > .\etc\conda\activate.d\env_vars.battype NUL > .\etc\conda\deactivate.d\env_vars.bat
  1. 修改.\etc\conda\activate.d\env_vars.bat

set KEY=VALUE
  1. 修改.\etc\conda\deactivate.d\env_vars.bat

set KEY=
  1. 重启环境

conda activate new_env

推荐阅读:

我的2022届互联网校招分享

我的2021总结

浅谈算法岗和开发岗的区别

互联网校招研发薪资汇总

2022届互联网求职现状,金9银10快变成铜9铁10!!

公众号:AI蜗牛车

保持谦逊、保持自律、保持进步

a289e08c4eea67ffa5445d7283a085df.jpeg

发送【蜗牛】获取一份《手把手AI项目》(AI蜗牛车著)

发送【1222】获取一份不错的leetcode刷题笔记

发送【AI四大名著】获取四本经典AI电子书

来源地址:https://blog.csdn.net/qq_33431368/article/details/131098554

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯