python 环境设置

本贴最后更新于 2890 天前,其中的信息可能已经水流花落

源代码安装 Python

#预置条件 sudo apt-get install -y \ autotools-dev \ blt-dev \ bzip2 \ dpkg-dev \ g++-multilib \ gcc-multilib \ libbluetooth-dev \ libbz2-dev \ libexpat1-dev \ libffi-dev \ libffi6 \ libffi6-dbg \ libgdbm-dev \ libgpm2 \ libncursesw5-dev \ libreadline-dev \ libsqlite3-dev \ libssl-dev \ libtinfo-dev \ mime-support \ net-tools \ netbase \ python-crypto \ python-mox3 \ python-pil \ python-ply \ quilt \ tk-dev \ zlib1g-dev # 安装 wget https://www.python.org/ftp/python/2.7.*/Python-2.7.*.tgz tar xfz Python-2.7.*.tgz cd Python-2.7.*/ ./configure --prefix /usr/local/lib/python2.7.* --enable-ipv6 make sudo make install # 修改符号链接 sudo rm -r /usr/bin/python sudo ln -s /usr/local/lib/python2.7.12/bin/python /usr/bin/python

但是安装 pip 不成功,有问题。不建议采用这种方式

devpi-server 设置

#使用全局安装 pip install -U devpi-server

Pypi 私有仓库

配置访问权限

sudo apt-get install apache2-utils htpasswd -sc $password_file $user_name

构建 virtualenv,并激活后安装相关组件

pip install pypiserver pip install passlib # 启动 exec /data/tools/pypi/pypi-virtualenv/bin/pypi-server -p 3141 -P $password_file $package_path

Supervisor 配置样例

[program:pypi-server] command=/data/tools/pypi/pypi-virtualenv/bin/pypi-server -p 3141 -P /data/tools/pypi/.htaccess /data/tools/pypi/packages ;directory=/data/tools/cow autostart=true autorestart=true stderr_logfile=/var/log/supervisor/pypi-server.err.log stdout_logfile=/var/log/supervisor/pypi-server.out.log

Setting up a private, team-wide PyPI repository

CentOS/Redhat 升级 Python

下载、编译及安装

yum -y update yum groupinstall "Development tools" yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel wget http://www.python.org/ftp/python/2.7.11/Python-2.7.11.tar tar xvf Python-2.7.11.tar ./configure make make altinstall

以上安装后运行 **python2.7 **即可调用

安装 easy_setup 和 pip

# easy setup wget https://bootstrap.pypa.io/ez_setup.py python2.7 ez_setup.py easy_install-2.7 pip pip2.7 install [packagename] pip2.7 install --upgrade [packagename] pip2.7 uninstall [packagename] # pip wget https://bootstrap.pypa.io/get-pip.py sudo python get-pip.py

Virtualenv 相关

安装 virtualenv

sudo apt-get install python-pip python-dev sudo pip install virtualenv

如果安装 Python3 的话,则安装 python3-dev

设置 virtualenv

mkdir $myprojectenv # 使用默认python初始化 virtualenv $myprojectenv # 使用特定版本初始化 virtualenv -p /usr/bin/python2.6 $myprojectenv #激活virtualenv source $myprojectenv/bin/activate #关闭virtualenv deactivate

pip 相关

pip 使用镜像

pip install $package -i $site/simple

/simple 必须有

如果需要设置全局则在文件中写入

linux 下,修改~/.pip/pip.conf,如果没这文件则创建。
linux virtualenv 下,修改 $VIRTUALENV/pip.conf,如果没这文件则创建。
windows 下,修改 %HOMEPATH%\pip\pip.ini。

[global] index-url = https://pypi.douban.com/simple

如果同时使用多个源

[global] ; Low timeout timeout = 20 ; Custom index extra-index-url = https://:@pypi.private.example.org/

官方源

Simple index

常用国内源

清华 https://pypi.tuna.tsinghua.edu.cn/simple
中科大 https://pypi.mirrors.ustc.edu.cn/simple
豆瓣 https://pypi.douban.com/simple

pip 安装

sudo apt-get install python-pip python-dev build-essential sudo pip install --upgrade pip sudo pip install --upgrade virtualenv

pip 检索组件

查看当前所安装的组件版本,如以下查看 psycopg2 版本
pip freeze | grep psycopg2

pip 获取当前所依赖的组件清单

pip freeze #导出到文件 pip freeze > requirements.txt

pip 从文件开始安装组件

pip install -r requirements.txt

pip 更新全部组件

pip freeze --local | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 pip install -U

pip 使用代理

sudo pip install --proxy user:password@proxyserver:port $package

pip 使用特定来源

sudo pip install $package -i $https://pypi.tuna.tsinghua.edu.cn/simple

pip 不同的 Python 版本

virtualenv --no-site-packages --distribute -p /usr/bin/python3.3 ~/.virtualenvs/pywork3

pip 私有仓库上传下载

编辑** .pypirc **文件,该文件在 Linux 的HOME 目录,可以通过

[distutils] index-servers = pypi other [pypi] repository: username: password: [other] repository: http://example.com/pypi username: password:

注册及上传,下载

python setup.py register -r http://example.com/pypi python setup.py sdist upload -r other pip install -i http://localhost:3141/simple/ $packagename

python pypi 私有源搭建

  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    556 引用 • 675 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...