python模块安装查看、包制作
一. 模块安装
ubuntu : apt-get install python-pip
redhat: yum install python-pip pip install 模块
pip install ansible=='2.4.3' #安装特定版本 注意: 有些用pip也找不到模块,可以试一下 apt-get install dateutil 这种安装方法
二. 查看python安装了哪些模块
pydoc modules # 显示所有已经安装了的模块 pydoc module #查看某一个具体的模块用法
三. python 安装包制作
参考 : https://my.oschina.net/leopardsaga/blog/174021
gsapi是一个python包,需要制作成tar安装包.
gsapi 目录结构展示如下:
gsapi
├── demo
│ ├── demo.py
│ └── setup.py
├── gsdatetime.py
├── gsexcel.py
├── gsfiles.py
├── gsftp.py
├── gsgeneral.py
├── gslogs.py
├── gsmail.py
├── gsmysql.py
├── gsparamiko.py
├── gspsutil.py
├── gssecret.py
├── __init__.py
├── README.rst
└── settings.py
1. setup.py 的编写。setup.py需要放在与gsapi同级目录
两种方式引入setup.
一种从setuptools包,一种从distutils.core包,前者可以方便上传至PyPI发布. 从setuptools包引入setup,要同时引入find_packages包用来搜索项目内的各packages
from setuptools import setup, find_packages
# -*- coding: utf-8 -*-
from setuptools import setup, find_packages setup(
name="gsapi",
version="0.0.4",
author="风间雅",
author_email="kazamaya.y@gmail.com",
description="gamesoul common api.",
packages=find_packages(),
platforms="Linux",
install_requires=[
# "nptlib", # apt or yum to install
# "dateutil", # apt or yum to install
"pytz>=2016.10",
"xlsxwriter>=0.9.3",
## "shutil", # already exists
## "ftplib", # already exists
# "MySQLdb", # apt or yum to install
"paramiko>=2.0.2",
"psutil>=4.4.2",
"cryptography>=1.5",
"pycrypto>=2.6.1"
]
)
2. 执行 python setup.py sdist,在 ./dist下生成了一个tar包gsapi-0.0.4.tar.gz
python setup.py bdist_egg # 生成类似 bee-0.0.1-py2.7.egg,支持 easy_install
python setup.py sdist # 生成类似 bee-0.0.1.tar.gz,支持 pip
python setup.py build #编译
python setup.py bdist_wininst # Windows exe
python setup.py bdist_rpm # rpm
3. cd ./dist ,执行 pip install gsapi-0.0.4.tar.gz 安装模块
4. pydoc gsapi 查看该模块
python模块安装查看、包制作的更多相关文章
- 解决Python pip安装第三方包慢的问题
解决Python pip安装第三方包慢的问题 主要是修改源,国内的源有几个 阿里云 http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi ...
- 初学python常用,python模块安装和卸载的几种方法
兄弟们常常因为遇到模块不会安装,或者遇到报错就懵了,就很耽误学习进度,今天我们就一次性了解Python几种安装模块的方法~不过~ 实在是懒得看 点击此处找管理员小姐姐手把手教你安装 一.命令提示符窗口 ...
- python模块安装注意事项
在安装python的第三方模块时,需要注意路径问题. 1.如果python是按默认位置安装的,则可以直接在命令提示符中进行安装,即pip install module_name. 2.如果python ...
- Python模块安装方法
安装Python模块 电子邮件 distutils-sig @ python .组织 作为一个受欢迎的开源开发项目,Python具有活跃的贡献者和用户支持社区,并且根据开放源代码许可条款,其软件可供其 ...
- python 模块安装导入
一.定义 python模块就是一个.py文件,一个模块中可以有多个函数,在使用模块时,只需要import下,就可以使用模块中的函数功能.import模块的过程相当于把这个py文件中的所有内容都执行一遍 ...
- 修改pip安装源加快python模块安装
用pip安装依赖包时默认访问https://pypi.python.org/simple/,但是经常出现不稳定以及访问速度非常慢的情况,国内厂商提供的pipy镜像目前可用的有: http://pypi ...
- Python模块安装与读取Excel
今天.想用Python读取一下Excel中的数据,从网上查找了一个样例,是要安装相关的模块: 1:到python官网下载http://pypi.python.org/pypi/xlrd模 ...
- python模块安装路径
Unix(Linux): prefix/lib/pythonX.Y/site-packages 默认路径:/usr/local/lib/pythonX.Y/site-packages 另外,在Unix ...
- 命令行运行python模块时提示包找不到的问题
庄稼人不是专职python开发的道友.尽管与python相识已多年,可惜相识不相知,仅仅是偶尔借助pydev写一些简单的小工具. 多年来.一直困惑于这样一个问题:相同的project.相同的代码,使用 ...
随机推荐
- Find Lines
(Uva 6955可以直接随机,湖大OJ 13348 要优化) 题意:给出 n个点的坐标, 一个 百分数p, 求是否有一条直线上有 n * p /100个点… 随机化算法,但也要优化下……(TLE, ...
- 前端 -----js 定时器
定时器 在js中的定时器分两种:1.setTimeout() 2.setInterval() 1.setTimeOut() 只在指定时间后执行一次 /定时器 异步运行 function hello ...
- python 基础 01
什么是计算机? cpu: 计算机的大脑; 读写速度 3GHZ 内存: (为了提高利用率) 缓冲硬盘和cpu 硬盘: 机械硬盘读写速度70mb/s 计算机里面读写的内容都是01代码 二进制(计算机只认二 ...
- HomeBrew 安转beta版软件
今天想装测试版的cocoapods,用 brew install cocoapods 后,总是安装稳定版,就是1.1.0,不是最新的beta版,发现用下面这个命令可以装最新beta版 brew ins ...
- Android 应用防止被二次打包指南
前言 “Android APP二次打包”则是盗版正规Android APP,破解后植入恶意代码重新打包.不管从性能.用户体验.外观它都跟正规APP一模一样但是背后它确悄悄运行着可怕的程序,它会在不知不 ...
- Google开发者大会:你不得不知的Tensorflow小技巧
Google开发者大会:你不得不知的Tensorflow小技巧 同步滚动:开 Google Development Days China 2018近日在中国召开了.非常遗憾,小编因为不可抗性因素滞 ...
- JUnit-三角形判断测试
添加工具 1.添加JUnit测试工具: 使用eclipse自带的JUnit或者下载相关包.使用方式如下: 新建一个项目后,点击next出现以下界面: 选择添加JUnit 选择完成出现以下目录文件: p ...
- 使用JUnit进行类的测试(一)
首先是测试的一些常用标注: @Test:执行测试的方法 @Before & @After : 在 测试的方法 “前” 或者 “后” 被唤醒 -Initialization -Release r ...
- Confluence 6 考虑使用自定义 CSS
CSS 的知识储备 如果你没有有关 CSS 的相关知识,请参考页面 CSS Resources section 中的内容.当你打算开始对 Confluence 的样式表进行修改之前,你应该对 CSS ...
- js小方法积累,将一个数组按照n个一份,分成若干数组
// 把一个数组按照一定长度分割成若干数组 function group(array, subGroupLength) { let index = 0; let newArray = []; whil ...