zoukankan      html  css  js  c++  java
  • Python基础(十五)—模块和命名空间、virtualenv与pip

    解释器

    需要Python解释器去执行.py文件。当我们从Python官方网站下载并安装好Python 3.x后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。
    CPython是使用最广的Python解释器。。
    其次还有IPython、PyPy、Jython(把Python代码编译成Java字节码执行)、IronPython(把Python代码编译成.Net的字节码)。

    模块和命名空间

    • 介绍
      一个模块就是一个包含pytho代码的文件, 后n缀名成是.py就可以,模块就是个python文件。模块通常当做命名空间使用,避免命名冲突
    • 导入模块
      假如我们编写一个hello.py模块,只包含一个简单的hi()函数。
      • import hello
        这种导入方法,在引用hi()函数时,是就必须采用:hello.hi()
      • from hello import hi
        这种办法使用hi()函数时,可以直接使用hi()。也可以用from hello import *,但是不推荐!!!
      • import hello as ho
        这种方法是最好的,相当于将复杂的名称重命名,简单化。
    • if _name_ == ‘_main_’
      为了对模块的测试,如上一个例子:hello.py模块,不止包含hi()函数。如果想要对hi()函数进行测试,我们可以在模块后面直接调用函数 hi()。但是这种情况下,当使用到该模块,无论调不调用hi(),都会运行测试函数hi()。由于在主程序中,查看__name__属性必定是输出_main_,如果查看的是:hello._name_,这个则输出为hello

      根据上面的说明,则不难想到if _name_ == '_main_'的作用了!当运行的主程序为该模块(测试的时候),则__name__为_main_,则运行对应的测试方法。
    • 搜索路径
      import sys
      print(sys.path)
      以上代码查看当前python搜索包的路径,可以用 sys.path.append(‘path’),引入搜索路径
    • 包管理
      创建包步骤如下:
      • 创建一个文件夹,名称则为包名称,存放对应模块
      • 文件夹内创建一个_init_.py的模块文件,内容可为空。
        以上创建完成,调用的话,直接使用包名.模块名,相当于以上的导入方法的模块名前,加上包名。

    虚拟环境virtualenv与pip

    • 下载
      可以直接使用pip3下载virtualenv,下载完成后,默认系统就直接可以使用virtual进行虚拟环境的创建、删除等。如有问题,可以在环境变量Path中(系统或用户变量都可以)进行相应的新增:C:UsersSunnyAppDataLocalProgramsPythonPython36-32Scripts
    • 使用
      virtualenv -p /usr/local/bin/python3.5 --no-site-packages venv
      创建一个python3环境下的不包含Python环境中的所有第三方包的虚拟环境venv
      激活可以直接运行
      venv/bin/activate
      则直接进入了虚拟环境中。
      退出直接运行:deactivate
    • 其他命令
      virtualenv list 查看所有虚拟环境
      删除:直接少出虚拟环境的目录venv即可
    • pip
      • pip命令
    pip --version
    pip list
    pip install --upgrade pip
    pip show Jinja2
    pip list --outdated
    pip install XXX.whl
    python setup.py install
    pip install scikit-learn==0.18.0
    
    • 下载源当下载包速度不可观,可以直接指定下载源:

      (清华源)pip install virtualenv -i https://pypi.tuna.tsinghua.edu.cn/simple/

      (豆瓣源)pip install virtualenv -i https://pypi.doubanio.com/simple/

    • 保存虚拟环境

      • 可以直接拷贝虚拟环境
      • 使用: pip freeze > requirements.txt,导出需求文本
        pip install -r requirements.txt,引入需求文本

    个人博客:Loak 正 - 关注人工智能及互联网的个人博客
    文章地址:Python基础(十五)—模块和命名空间、virtualenv与pip

  • 相关阅读:
    AcWing
    AcWing
    AcWing
    AcWing
    AcWing
    2019牛客国庆集训派对day1
    模板
    2019南昌网络赛H The Nth Item 矩阵快速幂
    ACwing92 递归实现指数型枚举 dfs
    ACwing91 最短Hamilton路径 状压dp
  • 原文地址:https://www.cnblogs.com/l0zh/p/13739742.html
Copyright © 2011-2022 走看看