最近在捣鼓Windows一些以前忽略,但买了阿里云后,又记起来的东西,然后有些东西确实想了很久,也挺有意义的,所以在这里分享一下。

第一种安装方式

利用pip去 https://pypi.org/ 官网拉取第三方模块,这个网站是pip能拉取到的所有第三方库的地方,当我们使用如下命令的时候,默认就是去该网址查找相应的模块,如果没有,则会安装失败。

>>>pip install PackageName / pip.exe install PackageName

或者是pip.exe,这两条命令是一致的。与之配套的一些常用命令还有:

>>>pip install -U PackageName       # 更新模块
>>>pip uninstall PackageName       # 卸载模块
>>>pip search PackageName      # 搜寻模块
>>>pip help                # 显示所有命令
...

第二种安装方式

使用easy_install安装,和上面的pip命令基本一致,根据官方的回答是easy_install比pip更古老,pip是在easy_install的基本上做了很多的优化,但对于模块来讲,越古老可能支持的第三方就越多,所以当pip无法安装的时候,可以考虑一下easy_install,说不定就可以安装。

>>>easy_install PackageName

但这里需要注意的是,如果我们要查看当前的easy_install的版本与安装路径,不像pip,直接输入就可以,easy_install会报错:

>>>easy_installerror: No urls, filenames, or requirements specified (see --help)

所以这里的命令是这样的:

>>>easy_install virtualenvSearching for virtualenv
Best match: virtualenv 16.1.0
Adding virtualenv 16.1.0 to easy-install.pth file
Installing virtualenv-script.py script to E:\anaconda\Scripts
Installing virtualenv.exe script to E:\anaconda\ScriptsUsing e:\anaconda\lib\site-packages
Processing dependencies for virtualenv
Finished processing dependencies for virtualenv

这样就能查询出本地的easy_install环境了,另外easy_install的命令和pip基本都是一致的,那么这即是第二种方式的拉取,下面就介绍怎么自定义安装。

第三种安装方式

setup.py的安装方式,进入当前setup.py的目录下,输入如下命令:

>>>python setup.py install

不知道读者们有没有发现,当我们在github上下载别人的源码时,有时候在最外层会有一个setup.py的文件,我当时是很疑惑的,后来看了相关的解释才知道这个是别人自定义的一个模块安装文件,我们只需要通过pip安装就可以了。

那么我就照着一些例子,写了一个模板出来,以后应该可以用得到。

#coding:utf-8# pip <= 9.0
try:from pip.req import parse_requirements
# pip > 9.0-
except:from pip._internal.req import parse_requirements
"""pip的版本分水岭是在9,如果要自定义安装,9以上的是后者,以下是前者,所以做了一个Try,为了适配所有版本
"""
from setuptools import find_packages, setupwith open('./version.txt', 'r') as f:version = f.read()"""读入自定义的版本号,一般都是从0.1开始,到1则为稳定,表示可能即将上线的版本"""
setup(name='MyBlog',    # 模块名称version=version,  # 版本号description='This is myblog,welcome ',    # 描述packages=find_packages(exclude=[]),  # 获取代码里所有的packageauthor='submarineas',author_email='1004995307@qq.com',license='Apache License v2', # 软件授权协议, GPL、BSD、APL,可以看看这几种授权的区别,各有各的限制package_data={'': ['*.*']},url='#',install_requires=[str(ir.req) for ir in parse_requirements("requirements.txt", session=False)],#所需的运行环境zip_safe=False, # 安装后在windows上卸载不会报错classifiers=['Programming Language :: Python','Operating System :: Microsoft :: Windows','Operating System :: Unix','Operating System :: GNU/Linux','Programming Language :: Python :: 2.7','Programming Language :: Python :: 3.4','Programming Language :: Python :: 3.5','Programming Language :: Python :: 3.6',],
)

可以运行我们的测试用例为:

另外就是setup包的常用参数如下,可以根据需求选择制作一个怎样的第三方模块:

参数 说明
name 包名称
version 包版本
author 程序的作者
author_email 程序的作者的邮箱地址
maintainer 维护者
maintainer_email 维护者的邮箱地址
url 程序的官网地址
license 程序的授权信息
description 程序的简单描述
long_description 程序的详细描述
platforms 程序适用的软件平台列表
classifiers 程序的所属分类列表
keywords 程序的关键字列表
packages 需要处理的包目录(通常为包含 init.py 的文件夹)
py_modules 需要打包的 Python 单文件列表
download_url 程序的下载地址
cmdclass 添加自定义命令
package_data 指定包内需要包含的数据文件
include_package_data 自动包含包内所有受版本控制(cvs/svn/git)的数据文件
exclude_package_data 当 include_package_data 为 True 时该选项用于排除部分文件
data_files 打包时需要打包的数据文件,如图片,配置文件等
ext_modules 指定扩展模块
scripts 指定可执行脚本,安装时脚本会被安装到系统 PATH 路径下
package_dir 指定哪些目录下的文件被映射到哪个源码包
requires 指定依赖的其他包
provides 指定可以为哪些模块提供依赖
install_requires 安装时需要安装的依赖包
entry_points 动态发现服务和插件
setup_requires 指定运行 setup.py 文件本身所依赖的包
dependency_links 指定依赖包的下载地址
extras_require 当前包的高级/额外特性需要依赖的分发包
zip_safe 不压缩包,而是以目录的形式安装

python模块安装方式和自定义模块安装相关推荐

  1. KALI Linux三种安装方式之U盘安装

    KALI Linux三种安装方式详解 KALI Linux三种安装方式之U盘安装 仅为个人经验交流,仅供参考 (对于KALI的介绍就不用多说了,既然选择安装说明有了充分的了解了) U盘安装顾名思义就是 ...

  2. python 自定义模块怎么用_python自定义模块使用说明

    保存一个hello.py文件在F:/data/python目录下hello.py >>> def hello(x): print x 目录 导入 >>> impor ...

  3. python自定义模块的使用_python自定义模块使用说明

    保存一个hello.py文件在F:/data/python目录下hello.py >>> def hello(x): print x 目录 导入 >>> impor ...

  4. 【python VS Code】调用自定义模块 ModuleNotFoundError: No module named XXX

    写 python 很久了,今天本没打算熬夜,但却被这么简单的问题困到了 零点半 - 有点像脑筋急转弯. 在 VS Code 等轻量文本编辑器/项目管理器中,我不希望像 pycharm 一样由配置文件自 ...

  5. Python入门--模块,from,import,自定义模块

    #模块 #函数与模块的关系-->一个模块中可以包含N多个函数 #在Python中一个扩展名为.py的文件就是模块 #使用模块的好处 #1.方便其他程序和脚本的导入并使用 #2.避免函数名和变量名 ...

  6. php自定义模块,简单介绍OpenCart自定义模块

    OpenCart模块可以自定义模块显示位置.排序.是否开启等功能,用起来十分方便. OpenCart用到的模块管理非常多,首页幻灯.导航.最新商品.特价商品.热卖商品等. 如何自定义一个模块?其实也挺 ...

  7. homeassistant几种安装方式对比,树莓派4docker安装记录

    测试了几种方式,最后用了docker方式在树莓派上安装,然后没有安装supervisor,具体原因后面详细说明. 第一种(放弃了),直接在树莓派的官方系统上用命令行安装,把python各种环境搞好,最 ...

  8. python怎么导入时间-Python,模块导入方式和time模块的使用

    一.模块的导入 1. 模块导入会将要导入的文件执行一遍 2. 导入模块的名称就是我们定义的脚本或包的名称 3. 我们导入模块的过程总结就是:在指定的范围内搜索指定名称对 python 脚本或者包,将其 ...

  9. mac 新版brew php安装方式接php扩展安装

    事发起因,之前笔记本装了好几个版本,因为后来升级系统,结果把系统的php跟自己装的弄混了,乱的很,所以想重装一下,结果发现brew人家迁移库了舍弃掉了php旧的版本,通过一些帮助做出如下改动. 1.使 ...

最新文章

  1. [Python]Python操作/管理Mysql学习(一)
  2. 《机器学习》课程视频(数据处理、模型构建与优化)
  3. 长期股权投资和私募股权投资的区别
  4. IE6-IE11兼容性问题列表及解决办法
  5. PHP $_SERVER 变量
  6. PAT乙级(1004 成绩排名)
  7. Hash Collision DoS 攻击
  8. 中兴天机Axon 10 Pro安兔兔跑分曝光:刷新记录!
  9. 生信c语言面试题,c语言入门 java
  10. 图形界面下,如何查看LINUX隐藏的文件、目录
  11. Java依赖包下载地址
  12. seaborn系列 (10) | 盒形图boxplot()
  13. 大二web期末大作业——动漫海贼王(可以很好的应付老师的作业)
  14. 阿里笔试模拟题-74.钱庄
  15. c# 弹出虚拟键盘关闭虚拟键盘(适用win10、win7)学习记录(转载)
  16. 高德地图 根据名称搜索坐标,坐标点呈现列表展示
  17. 一嗨租车宣布获老虎基金等1.34亿美元投资
  18. 议程公布!2021年MongoDB中文社区杭州大会
  19. 办公室的好帮手!多能办公记事本 V3.7 (20150607更新)
  20. 使用 Vanilla JavaScript 构建自定义 SPA 路由器

热门文章

  1. Python——反斜杠\在行尾时的作用
  2. python理想低通滤波、巴特沃斯低通滤波、高斯低通滤波实现
  3. 上海浦东机场乘坐 磁悬浮信息
  4. Ubuntu20.04安装并配置SSH
  5. jQuery之禁止Get请求缓存
  6. 企业拥抱Windows 8的十大理由
  7. 20个最佳人工智能和机器学习YouTube频道
  8. matlab中zeros表示什么,Matlab中 函数zeroS(1,8) 代表什么意思??
  9. 数据产品经理,并不是数据 + 产品经理
  10. kali创建文件_LINUX中,创建文件夹、文件命令及清除命令。