virtualenv/pip的api

virtualenv-api的Python项目详细描述


Build StatusLatest versionBSD License

virtualenv是创建独立python环境的工具。不幸的是, 它不公开本机python api。此包旨在提供 环绕virtualenv的包装物的形式。

它可用于创建和删除环境以及执行包管理 在环境中。

对所有受支持的python版本都提供了完全支持。

安装

最新的稳定版本可在PyPi

$ pip install virtualenv-api

请注意,发行版名为virtualenv-api,而python 包名为virtualenvapi

或者,您可以从git获取最新版本:

$ pip install git+https://github.com/sjkingo/virtualenv-api.git

用法

开始管理一个环境(如果不存在的话,它将被创建):

fromvirtualenvapi.manageimportVirtualEnvironmentenv=VirtualEnvironment('/path/to/environment/name')

如果您已经激活了一个virtualenv并希望对其进行操作,只需 在不使用path参数的情况下调用VirtualEnvironment

env=VirtualEnvironment()

VirtualEnvironment构造函数接受一些可选参数(其默认值如下所示):

  • python=None-指定要使用的python解释器。默认为默认系统解释器(2.1.3中的新功能)
  • {TT5}$-现有目录以重写默认PIP下载缓存< /LI>
  • readonly=False-阻止所有可能修改环境的操作(2.1.7中的新功能)
  • system_site_packages=False-在环境操作中包含系统站点包(2.1.14中的新功能)

操作

一旦有了VirtualEnvironment对象,就可以对其执行操作。

  • 检查是否安装了mezzanine包:
>>>env.is_installed('mezzanine')False
  • 安装最新版本的mezzaninepackage:
>>>env.install('mezzanine')
  • 最新版本的mezzanine包的轮子(新的 2.1.4):
>>>env.wheel('mezzanine')
  • 安装django包的1.4版(这是pip的语法):
>>>env.install('django==1.4')
  • django包升级到最新版本:
>>>env.upgrade('django')
  • 将所有软件包升级到其最新版本(2.1.7中的新版本):
>>>env.upgrade_all()
  • 卸载mezzanine包:
>>>env.uninstall('mezzanine')

软件包只能指定为名称(用于最新版本),使用 pip的包语法(例如django==1.4)或('name', 'ver')的元组(例如('django', '1.4'))。

  • 包可以直接从git存储库安装(必须结束 使用.git):
>>>env.install('git+git://github.com/sjkingo/cartridge-payments.git')

2.1.10中的新功能:

    包可以在PIP的^ {EM1}$$EME>模式中安装,通过预装包 名称与-e(这是pip的语法):
>>>env.install('-e git+https://github.com/stephenmcd/cartridge.git')

2.1.15中的新功能:

  • PIP需求文件中的包可以通过预安装来安装 具有-r
  • 的需求文件路径
>>>env.install('-r requirements.txt')
  • 环境实例提供了installed_packages 属性:
>>>env.installed_packages[('django','1.5'),('wsgiref','0.1.2')]
  • 也可以以同样的方式提供软件包名称列表:
>>>env.installed_package_names['django','wsgiref']
  • 在pypi上搜索包(在2.1.5中更改:现在返回 字典而不是列表:
>>>env.search('virtualenv-api'){'virtualenv-api':'An API for virtualenv/pip'}>>>len(env.search('requests'))231
  • 可以使用env.search的旧功能(2.1.5之前的版本):
>>>list(env.search('requests').items())[('virtualenv-api','An API for virtualenv/pip')]

每个命令的详细输出在环境的 build.log文件,该文件随每个操作一起附加到。任何错误都是 已登录到build.err

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java错误:无法解析方法   如何用相同的父标记和子标记在Java中解析XML?   日期使用Java中的时区偏移将本地时间转换为UTC   java如何在多进程、多线程环境中读取文件   WebView中的java弹出式对话框不在当前显示范围内,但在chrome浏览器中运行良好   只有2个参数的java递归二进制搜索方法   无法在java中调用函数   java JavaMail在Tomcat服务器上运行时停止工作   反射通过java程序生成、编译和运行java类   java Android:如何使ListView即使在应用程序关闭后仍保持禁用状态   在JAVA中识别匿名类实例   java渲染一个由三角形组成的立方体,在旋转时会产生奇怪的角度   函数式编程如何基于比较连续的列表元素将Java流减少为布尔值   java如何替换列表中的多个项目?   java Android如何获取随机sqlite数据?   java我已经将useSSL设置为false,但仍然收到警告   java使用动态变量生成jlabel   apachespark:java。lang.NoClassDefFoundError v2TableWithV1回退