win10下直接使用pipenv会把配置文件放在%appdata%/pythonxxx
等文件夹下,我不喜欢,接用msys会放在./home/username/.vitrualenvs/..
下,是跟随msys安装目录的。也许%appdata%文件夹也能挪位置,但我觉得麻烦。啊哈哈哈
可以从清华的镜像https://mirrors.tuna.tsinghua.edu.cn/站点直接下载安装。
根据https://mirrors.tuna.tsinghua.edu.cn/help/msys2/更改源。
msys2使用pacman管理包,第一次进入应执行:
pacman -Sy
pacman -Syu
pacman -Su
pacman -S nano
在~/.bash_profile
文件中添加:
export PATH="$PATH:/XXX/python/:/XXX/python/Scripts/"
参照:https://mirrors.tuna.tsinghua.edu.cn/help/pypi/
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
~/.config/pip/pip.conf
%APPDATA%\pip\pip.ini
(有效,文件不存在要自己建立)$HOME/Library/Application Support/pip/pip.conf
添加
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
未实验在使用msys时,pip.exe会否调用pip.conf
文件
插曲:msys2与ubuntu for win10哪个好用?
简单试了试,ubuntu运行速度块,但即使添加了path也不认为你安装了python,需要使用apt install
来添加,整体来说真的是个独立的LINUX环境,而ubuntu不受控的安到了C盘,所以我选择了msys2。
参考:http://pythonguidecn.readthedocs.io/zh/latest/dev/virtualenvs.html
将目录更改为python项目文件夹,并启动pipenv
pipenv install
这将创建 pipfile和 pipfile.lock,这两个文件描述了项目依赖环境的配置情况,当有人git-clone了项目,只需安装了pipenv就可以配置出同样的环境。
如果添加–two或–three 标志在上面的命令后,它会分别使用Python2 或3 来初始化项目。否则将使用默认的Python版本。
Pipfile包含关于项目的依赖包的信息,并取代通常在Python项目中使用的requirements.txt文件。如果你在具有requirements.txt文件的项目中启动了Pipenv,则在把它从项目中删除之前,应该使用Pipenv安装该文件中列出的所有依赖包。
要为你的项目安装Python包,请使用install
关键字。 例如,
pipenv install beautifulsoup4
将安装当前版本的Beautiful Soup包。
可以使用uninstall
关键字以类似的方式删除包,
pipenv uninstall beautifulsoup4
可以通过更新Pipfile.lock
来冻结软件包名称及其版本以及其自己的依赖关系的列表。 这是使用lock关键字完成的,
pipenv lock
如果另一个用户git-clone,可以添加Pipfiles
到你的Git存储库,这样他们只需要在他们的系统中安装Pipenv,然后键入,
pipenv install
Pipenv
会自动找到Pipfiles
,创建一个新的虚拟环境,并安装必要的软件包。
通常有一些Python包只在你的开发环境中需要,而不是在你的生产环境中,例如单元测试包。 Pipenv将使用--dev
标志保持两个环境分开。 例如,
pipenv install --dev nose2
将安装nose2,但也将其关联为只在你的开发环境中需要的软件包。这很有用,因为现在,如果你要在你的生产环境中安装你的项目,pipenv install
默认情况下不会安装nose2包。但是,如果另一个开发人员将你的项目克隆到自己的开发环境中,他们可以使用–dev标志,pipenv install –dev
安装所有依赖项,包括开发包。
为了激活与你的Python项目相关联的虚拟环境,你可以简单使用shell命令,比如,
pipenv run which python
将在您的虚拟环境中运行which python
命令,并显示与您的虚拟环境相关联的python可执行文件所在的路径。
下面是在虚拟环境中整洁运行你自己的Python代码的一个方法,
pipenv run python my_project.py
如果你不想每次运行Python时都输入这么多,你可以在shell中设置一个别名,例如,
alias prp="pipenv run python"