python-模块安装方法
?
python程序會使用很多模塊,通常安裝模塊的方法是找到官方網站,選擇合適的版本下載安裝,很麻煩。為了簡化安裝第三方的模塊,python提供了easy_install工具,只需要一條命令就可以安裝合適的模塊,easy_install是python-setuptools包里的一個命令,所以只要安裝python-setuptools就可以了。
ubuntu:
sudo apt install python-setuptools
centos:
sudo? yum install python-setuptools
?
由于正在學習,就不可避免的學到python中怎樣安裝模塊,比如用easy_install安裝就很方便,但是該命令只管安裝和刪除,卻不管列出當前已經安裝哪些模塊,讓用慣pkg_info 的我很不適宜。于是到處尋找答案,終于找到解決方案,就是在python環境中輸入:
help(‘modules’) 就能列出所有已經安裝的模塊了。
我確認了一下,嗯,安裝的bottle、web、plone、pyramid、pylons、django等都在,看來真的管用。
?
pip是一個可以替代 easy_install 的安裝和管理 python 軟件包的工具,提供更好的提示信息,可以刪除包。linux自帶的python版本比較低,軟件源里沒有python-pip包,不過我們可以先安裝easy-install,在用easy_install安裝pip
sudo easy_install pip安裝的模塊會在下面的路徑下生成相應的目錄
fgy@fgy-QTH6:/tmp$ ll /usr/local/lib/python2.7/dist-packages/
total 24
drwxrwsr-x 5 root staff 4096 8月?? 7 20:45 ./
drwxrwsr-x 4 root staff 4096 7月? 20 04:48 ../
drwxr-sr-x 4 root staff 4096 8月?? 7 18:40 Django-1.10-py2.7.egg/
-rw-r--r-- 1 root staff? 265 8月?? 7 20:45 easy-install.pth
drwxr-sr-x 4 root staff 4096 8月?? 7 18:37 image-1.5.3-py2.7.egg/
drwxr-sr-x 4 root staff 4096 8月?? 7 20:45 pip-8.1.2-py2.7.egg/
fgy@fgy-QTH6:/usr/local/lib/python2.7/dist-packages$ cd pip-8.1.2-py2.7.egg/
fgy@fgy-QTH6:/usr/local/lib/python2.7/dist-packages/pip-8.1.2-py2.7.egg$ ls
EGG-INFO? pip
fgy@fgy-QTH6:/usr/local/lib/python2.7/dist-packages/pip-8.1.2-py2.7.egg$ cd pip/
fgy@fgy-QTH6:/usr/local/lib/python2.7/dist-packages/pip-8.1.2-py2.7.egg/pip$ ls
basecommand.py?? cmdoptions.py?? download.py???? index.py????? locations.py?? models????????? req?????????????? vcs
basecommand.pyc? cmdoptions.pyc? download.pyc??? index.pyc???? locations.pyc? operations????? status_codes.py?? _vendor
baseparser.py??? commands??????? exceptions.py?? __init__.py?? __main__.py??? pep425tags.py?? status_codes.pyc? wheel.py
baseparser.pyc?? compat????????? exceptions.pyc? __init__.pyc? __main__.pyc?? pep425tags.pyc? utils???????????? wheel.pyc
?
?
https://pythonhosted.org/setuptools/easy_install.html
1、安裝python程序包
easy_install可以通過文件名稱、資源的URL、.egg文件(python egg文件)來下載安裝文件
1.1通過名字安裝,在PyPi中搜索最近的版本,自動下載,編譯和安裝。
>>easy_install?????? SQLObject
通過下載頁面獲取包的名字、版本信息,以及獲取鏈接來安裝和更新。
>>easy_install???? -f??? http://pythonpaste.org/package_index.html SQLObject? ?
通過一個詳細的URL自動下載和安裝
>>easy_install???? http://example.com/path/to/MyPackage-1.2.3.tgz
安裝已經下載的.egg文件
>>easy_install??? /my_downloads/OtherPackage-3.2.1-py2.3.egg
根據PyPI的列表更新一個已經安裝的軟件包
>>easy_instal??? l --upgrade??? PyProtocols
安裝一個已經下載的在當前目錄的軟件包
>>easy_install??? .? (注意參數是個點)
2.軟件包更新
2.1更新到制定版本
>>easy_install??? "SomePackage==2.0"
2.2更新到大于一個值的版本
>>easy_install?? "SomePackage>2.0"
2.3根據PyPI的列表更新一個已經安裝的軟件包
>>easy_install?? --upgrade???? SomePackage
3、卸載安裝的包
如果你想安裝一個其他版本的包,你只需要刪除這個版本PackageName-versioninfo.egg文件或者文件夾(包安裝的文件夾)
如果你想刪除現在安裝的包,或者這個包的所有版本,可以運行一下命令:
>>easy_install -m PackageName
這樣刪除后,python不會繼續搜索這個包,你執行這個命令后,可以安全的刪除.egg文件夾。
結束語:easy_install功能還有很多,如修改搜索的網站,查看和編輯源碼包,以后用到再更新。
?
?
經常接觸Python的同學可能會注意到,當需要安裝第三方python包時,可能會用到easy_install命令。easy_install是由 PEAK(Python Enterprise Application Kit)開發的setuptools包里帶的一個命令,所以使用easy_install實際上是在調用setuptools來完成安裝模塊的工作。 Perl用戶比較熟悉 CPAN,而 Ruby 用戶則比較熟悉 Gems;引導 setuptools 的 ez_setup 工具和隨之而生的擴展后的 easy_install 與 “Cheeseshop”(Python Package Index,也稱為 “PyPI”)一起工作來實現相同的功能。它可以很方便的讓您自動下載,編譯,安裝和管理Python包。Python模塊安裝 1. 單文件模塊 直接把文件拷貝到$python_dir/lib2. 多文件模塊,帶setup.py python setup.py install3. egg文件 1) 下載ez_setup.py,運行python ez_setup 2) easy_install *.egg 雖然Python的模塊可以拷貝安裝,但是一般情況下推薦制作一個安裝包,即寫一個setup.py文件來安裝。 setup.py文件的使用:% python setup.py build #編譯 % python setup.py install #安裝 % python setup.py sdist #制作分發包 % python setup.py bdist_wininst #制作windows下的分發包 % python setup.py bdist_rpm setup.py文件的編寫 setup.py中主要執行一個 setup函數,該函數中大部分是描述性東西,最主要的是packages參數,列出所有的package,可以用自帶的find_packages來動態獲取package。所以setup.py文件的編寫實際是很簡單的。 簡單的例子: setup.py文件from setuptools import setup, find_packagessetup(name = " mytest " ,version = " 0.10 " ,description = " My test module " ,author = " Robin Hood " ,url = " http://www.csdn.net " ,license = " LGPL " ,packages = find_packages(),scripts = [ " scripts/test.py " ],)mytest.pyimport sysdef get():return sys.path scripts/test.pyimport os print os.environ.keys() setup中的scripts表示將該文件放到 Python的Scripts目錄下,可以直接用。 OK,簡單的安裝成功,可以運行所列舉的命令生成安裝包,或者安裝該python包。本機測試成功(win32-python25)! ============================================================== setuptools它可以自動的安裝模塊,只需要你提供給它一個模塊名字就可以,并且自動幫你解決模塊的依賴問題。一般情況下用setuptools給安裝的模塊會自動放到一個后綴是.egg的目錄里。首先,安裝setuptools這個東西,先去下載一個腳本: http://peak.telecommunity.com/dist/ez_setup.py 下載完后直接執行它就會幫你把setuptools給裝好。 之后,安裝模塊的使用方法就是使用一個叫easy_install的命令,在Windows里,這個命令在python安裝目錄下的scripts里面,所以需要把scripts加到環境變量的PATH里,這樣用起來就更方便,linux下不需要注意這個問題。 安裝軟件只需要執行:easy_install 模塊名?
總結
以上是生活随笔為你收集整理的python-模块安装方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 5月第2套题
- 下一篇: Nodejs-express 4.0框架