在python代码中加入环境变量的语句操作

以GraphViz为例:

下载安装好的路径名字为C:/Program Files (x86)/Graphviz2.38

import os
os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/'  #注意修改你的路径

os.environ[‘path']返回的是所有环境变量的所在的位置,我们这里是为了添加,所以再重新造一个。

os.pathsep返回的是分隔符“;”

补充:Python之加环境变量

1、python找文件是先去当前文件所在的文件夹下找

也就是bin目录下找

2、如果bin目录里找不到

再去python的环境变量里找

如果有pycharm,那么直接点右键-选择Mark Directory-Source Root就可以将文件加入到环境变量里;但如果没有pycharm,需要手动加环境变量。

3、如果是在本机上运行

则手动加入以下两行代码即可:

import sys
sys.path.insert(0,r'F:\0.script repository\Python\jnz\review\my_api') #将当前目录加入到本机的环境变量中

4、如果不再本机上运行

就不能指定绝对路径了,这时需要加入以下代码:

import os
import sys
res=os.path.abspath(__file__) #获取当前文件的绝对路径
base_path=os.path.dirname(os.path.dirname(res)) #获取当前文件的上两级目录
sys.path.insert(0,base_path) #加入环境变量
#以上5行代码必须要加入到文件的最上方

其中,os.path.abspath()为获取当前文件的绝对路径;

os.path.dirname()为获取当前文件的上一级目录;

sys.path.insert(0,path)为将路径加入到环境变量中的最前方。

以后无论有没有pycharm,是否是本机,是否是Linux系统,只要先加入这几行代码,再运行就可正常执行代码了。

补充:windows 环境下 Python 添加环境变量方法大全!!!(PYTHONPATH)

windows添加环境变量就是坑。。。可以的话还是换Linux吧。。。

注意:以下方法操作以后,记得重启 IDE(Pycharm)或者CMD(或者 anaconda prompt)!!!

方法一、

在cmd命令行,或者 anaconda prompt输入:

set PYTHONPATH=路径

在windows下的 set 类似与Linux下的 export 命令

方法二、

右击【我的电脑】-【属性】-【高级系统设置】-【环境变量】-【新建】

1、新建环境变量名: PYTHONPATH

2、设定值(路径)为:路径名

注意添加多个值(路径),要用分号 “;” 隔开

方法三、

在Python的环境中用记事本新建一个 .pth 文件,并加入路径,每行添加一条

如:在anaconda的虚拟环境 py3.6 下添加新的环境变量

1、在路径 D:\softwear_install_position\anaconda3\envs\py3.6\Lib\site-packages 下新建文件 mypkpath.pth,

2、文件中 添加如下即可:

D:\my_file_name

D:\my_fiile_name_lib

方法四、

在python脚本中添加

import sys
sys.path.append(r'D:\mypath')

验证是否添加成功

打开 Pycharm,输入:

import sys
print("len(sys.path):",len(sys.path))
for path in sys.path:
    print(path)

即可查看,刚刚的环境变量是否添加成功

注意!重启一下 Pycharm再试一下!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • python matplotlib绘图实现删除重复冗余图例的操作

    问题: 由于自己做项目的时候,需要循环的绘制数据,假设有100个样本,每个样本包含两个坐标点(A, B),我需要对这两个点标上不同的颜色,同时还要画出两点间的连线. 显然这个问题中图例我只需要3个(A点,B点,AB的连线),而不是300个,因为每个样本的A点都是同样的颜色,B点也都是一样的颜色,AB的连线也是. 但是单纯的在画完图之后用plt.legend(), 它会给你画出所有300个图例来,这肯定不是我想要的. 探索过程: 如何解决呢? 当然有一种很强制的方法,就是只在画第一个样本,或最后一

  • 用Python的绘图库(matplotlib)绘制小波能量谱

    时间小波能量谱 反映信号的小波能量沿时间轴的分布. 由于小波变换具有等距效应,所以有: 式中 表示信号强度,对于式①在平移因子b方向上进行加权积分 式中 代表时间-小能量谱 尺度小波能量谱 反映信号的小波能量随尺度的变化情况. 同理,对式①在尺度方向上进行加权积分: 式中 连续小波变换 连续小波变换的结果是一个小波系数矩阵,随着尺度因子和位移因子变化.然后将系数平方后得到小波能量,把每个尺度因子对应的所有小波能量进行叠加,那么就可以得到随尺度因子变换的小波能量谱曲线.把尺度换算成频率后,这条曲线

  • Python requests timeout的设置

    背景 最近在搞爬虫,很多小组件里面都使用了 Python 的 requests 库,很好用,很强大. 但最近发现很多任务总是莫名其妙的卡住,不报错,但是就是不继续执行. 排查了一圈,最后把问题锁定在 requests 的 timeout 机制上. 注:本文讨论的是 Python 的第三方模块 requests,并不是 Python 内建模块 urllib 中的 request 模块,请注意区分. 如何设置超时时间 requests 设置超时时间有两种方式. 一种是设置单一值作为 timeout,

  • python爬取各省降水量及可视化详解

    在具体数据的选取上,我爬取的是各省份降水量实时数据 话不多说,开始实操 正文  1.爬取数据 使用python爬虫,爬取中国天气网各省份24时整点气象数据 由于降水量为动态数据,以js形式进行存储,故采用selenium方法经xpath爬取数据-ps:在进行数据爬取时,最初使用的方法是漂亮汤法(beautifulsoup)法,但当输出爬取的内容(<class = split>时,却空空如也.在源代码界面Ctrl+Shift+F搜索后也无法找到降水量,后查询得知此为动态数据,无法用该方法进行爬取

  • Python+Appium新手教程

    准备 1.电脑系统:win10 2.手机:安卓(没钱买苹果) 3.需要的工具可以从官网下载 https://appium.io/ https://www.jetbrains.com/pycharm/ https://www.python.org/ https://www.oracle.com/cn/java/technologies/javase-downloads.html 安装 python jdk 编辑器PyCharm Appium-windows-x.x Appium_Python_Cl

  • 用Python实现Newton插值法

    1. n阶差商实现 def diff(xi,yi,n): """ param xi:插值节点xi param yi:插值节点yi param n: 求几阶差商 return: n阶差商 """ if len(xi) != len(yi): #xi和yi必须保证长度一致 return else: diff_quot = [[] for i in range(n)] for j in range(1,n+1): if j == 1: for i in

  • Python爬虫之爬取2020女团选秀数据

    一.先看结果 1.1创造营2020撑腰榜前三甲 创造营2020撑腰榜前三名分别是 希林娜依·高.陈卓璇 .郑乃馨 >>>df1[df1['排名']<=3 ][['排名','姓名','身高','体重','生日','出生地']] 排名 姓名 身高 体重 生日 出生地 0 1.0 希林娜依·高 NaN NaN 1998年07月31日 新疆 1 2.0 陈卓璇 168.0 42.0 1997年08月13日 贵州 2 3.0 郑乃馨 NaN NaN 1997年06月25日 泰国 1.2青春有

  • python爬虫之教你如何爬取地理数据

    一.shapely模块 1.shapely shapely是python中开源的针对空间几何进行处理的模块,支持点.线.面等基本几何对象类型以及相关空间操作. 2.point→Point类 curve→LineString和LinearRing类: surface→Polygon类 集合方法分别对应MultiPoint.MultiLineString.MultiPolygon 3.导入所需模块 # 导入所需模块 from shapely import geometry as geo from s

  • 在python代码中加入环境变量的语句操作

    以GraphViz为例: 下载安装好的路径名字为C:/Program Files (x86)/Graphviz2.38 import os os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/' #注意修改你的路径 os.environ['path']返回的是所有环境变量的所在的位置,我们这里是为了添加,所以再重新造一个. os.pathsep返回的是分隔符";" 补

  • Webpack中使用环境变量的各种正确姿势

    目录 写在前边 业务代码使用环境变量 使用webpack.DefinePlugin插件在业务代码中注入环境变量 webpack.DefinePlugin引发的思考 definePlugin所谓的"环境变量"实现方式 JSON.stringify()处理环境变量 构建过程中使用环境变量 传统环境变量方法使用webpack构建过程环境变量. 总结 写在前边 你还在为Webpack中各种打包配置而烦恼吗? 今天我们来聊聊webpack中注入环境变量的各种姿势,或者你会觉得注入环境变量通过命令

  • Linux中修改环境变量及生效方法

    在/etc/profile文件中添加变量[对所有用户生效(永久的)] 用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是"永久的". 要让刚才的修改马上生效,需要执行以下代码 source /etc/profile 以上这篇Linux中修改环境变量及生效方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • 在Linux操作系统中修改环境变量的方法

    方法一:在/etc/profile文件中添加变量[对所有用户生效(永久的)] 用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是"永久的". 要让刚才的修改马上生效,需要执行以下代码 复制代码 代码如下: # source /etc/profile 方法二:在用户目录下的.bash_profile文件中增加变量[对单一用户生效(永久的)] 用VI在用户目录下的.bash_profile文件中增加变量,改变量仅会对当前用户有效,并且是&quo

  • docker中的环境变量使用与常见问题解决方案

    前言 docker可以为容器配置环境变量.配置的途径有两种: 在制作镜像时,通过ENV命令为镜像增加环境变量.在容器启动时使用该环境变量. 在容器启动时候,通过参数配置环境变量,如果与镜像中有重复的环境变量,会覆盖镜像的环境变量. 使用docker exec {containerID} env即可查看容器中生效的环境变量. [root@localhost ~]# docker exec 984 env PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/

  • 聊聊Python代码中if __name__ == ‘__main__‘的作用是什么

    目录 Python中if__name__==‘__main__‘作用 补充:if__name__=='__main__':的运行原理 总结 Python中if __name__ == ‘__main__‘作用 要搞清楚这个问题,要知道以py作为后缀的Python代码文件,有两种使用方式,第一种方式是直接运行,另一种方式是作为模块被别的py文件导入. 当采用第一种方式直接运行自身时,__name__的值为__main__: 当采用第二种方式被别的模块导入时,其__name__的值为其文件名(通常也

  • Linux中Bash环境变量的配置方法

    Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言. 以下是几种shell版本,bash是默认的: sh(全称 Bourne Shell): 是UNIX最初使用的 shell,而且在每种 UNIX 上都可以使用. Bourne Shell 在 shell 编程方面相当优秀,但在处理与用户的交互方面做得不如其他几种 shell. bash(全称 Bourne Again Shell): LinuxOS 默认的,它是 Bou

  • python代码中怎么换行

    在写代码过程中,经常遇到一行代码很长的情况.为了让代码显得整齐干净,就需要把一行代码分成多行来写,Python中有两种小技巧可以实现该功能: 1.用反斜杠链接多行代码,示例输出:55 a = 22 + \        33 print a 2.用小括号括起来,示例输出:55 a = (22+        33) print a 提示:针对较长字符串分成多行书写的还有一种简单的方法:用三个单引号,但是该方法只针对字符串有用.下面代码输出: 32 +     45 a = '''32 +    

  • Python代码中如何读取键盘录入的值

    读取键盘输入 Python提供了两个内置函数从标准输入读入一行文本,默认的标准输入是键盘.如下: raw_input input raw_input函数 raw_input([prompt]) 函数从标准输入读取一个行,并返回一个字符串(去掉结尾的换行符): #!/usr/bin/python str = raw_input("Enter your input: "); print "Received input is : ", str 这将提示你输入任意字符串,然

  • Python编程中闭包的变量作用域问题解析

    目录 闭包 闭包中的变量 闭包 ​ 在我们使用返回函数的时候,由于我们在一个函数中需要返回另一个函数,因此,我们在这个函数中就需要重新定义一个函数.而这样,就造成了我们的函数嵌套问题.外面的函数相对于里面的函数而言是外函数(outer function),而里面的我们叫他内函数(inner function). def outerFunction(): #外函数 def innerFunction(): #内函数 x = 1 return x return innerFunction #返回值是

随机推荐