基于pip的python包管理工具
以下是软件下载链接:https://mysecreat.lanzoub.com/i5yvf0swgtne
软件功能:可以对python包进行安装、卸载、升级、换源等操作,不用输入复杂命令
源码:
import os
def menu():
while(True):
choice=input("1.安装 2.卸载 3.升级 4.查看 5.换源\n请输入:")
if(choice=='1'):
install()
elif(choice=='2'):
uninstall()
elif(choice=='3'):
upgrade()
elif(choice=='4'):
show_pack()
elif(choice=='5'):
change_source()
else:
print("指令不正确")
os.system("pause")
os.system("cls")
def loop(fun):
def wrapper():
fun()
os.system("pause")
os.system("cls")
return wrapper
@loop
def install():
mode=input("请输入你要安装的模块名称(版本):")
cmd=f'pip install {mode}'
os.system(cmd)
print("安装完成!")
@loop
def uninstall():
mode=input("请输入你要卸载的模块名称(版本):")
cmd=f'pip uninstall {mode}'
os.system(cmd)
print("卸载完成!")
@loop
def upgrade():
cmds=["pip install -U pip","pip list -o"]
for cmd in cmds:
os.system(cmd)
print("以上包待升级")
choice=input("1.全部升级\t2.单独升级")
if(choice=='1'):
cmds=["pip install pip-review","pip-review --local --interactive"]
for cmd in cmds:
os.system(cmd)
print("如果需要全部升级则按下‘a’并回车,一个个确认则按'y',取消按'n'")
elif(choice=='2'):
package_name=input("请输入升级模块名称:")
cmd=f'pip install --upgrade {package_name}'
os.system(cmd)
else:
print("选择错误!")
@loop
def show_pack():
pack_name=input("请输入你要查看的包名称:")
cmd=f"pip show {pack_name}"
os.system(cmd)
@loop
def change_source():
sources={
'清华':'https://pypi.tuna.tsinghua.edu.cn/simple',
'阿里云':'http://mirrors.aliyun.com/pypi/simple/',
'中国科技大学':'https://pypi.mirrors.ustc.edu.cn/simple/',
'华中理工大学':'http://pypi.hustunique.com/',
'山东理工大学':'http://pypi.sdutlinux.org/',
'豆瓣':'http://pypi.douban.com/simple/',
}
index_source={
'1':'清华',
'2':'阿里云',
'3':'中国科技大学',
'4':'华中理工大学',
'5':'山东理工大学',
'6':'豆瓣',
}
choice=input("1.清华\t2.阿里云\t3.中科大\t4.华中理工\t5.山东理工\t6.豆瓣\n请选择你要换的源(输入前面序号即可):")
source=sources[index_source[choice]]
cmd=f"pip config set global.index-url {source}"
os.system(cmd)
if __name__ == '__main__':
menu()
基于pip的python包管理工具的更多相关文章
- Python包管理工具pip的基本使用
1.简介 pip 是一个Python包管理工具,主要是用于安装 PyPI 上的软件包,可以替代 easy_install 工具. 2.pip安装 如果你安装的Python 2 >=2.7.9 或 ...
- python 包管理工具 pip 的配置
近几年来,python的包管理系统pip 越来越完善, 尤其是对于 windows场景下,pip大大改善了python的易用性. https://www.cnblogs.com/yvivid/p/pi ...
- Python包管理工具和多版本环境管理
1. Python包管理工具 在安装Python包的过程中,经常涉及到distutils.setuptools.distribute.setup.py.easy_install.easy_instal ...
- python包管理工具他们之间的关系
python包管理工具之间的关系 现在的python包管理工具有很多,非常混乱,必须理清他们之间的关系才能更好的使用python构建强大的包关系系统工具. 首先:python官方推荐的第三方库是PyP ...
- python 包管理工具
python 包管理工具 Python当前的包管理工具链是 easy_install/pip + distribute/setuptools + distutils,显得较为混乱. 而将来的工具链组合 ...
- Python 包管理工具解惑
Python 包管理工具解惑 本文链接:http://zengrong.net/post/2169.htm python packaging 一.困惑 作为一个 Python 初学者,我在包管理上感到 ...
- 转载:Python 包管理工具解惑
Python 包管理工具解惑 本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也尊重你的智商: 本站部分原创和翻译文章提供m ...
- Python包管理工具小结
此文已由作者张耕源授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 作为一名接触Python有一段时间的初学者,越来越体会到Python的方便之处,它使人能更 多的关注业务本身 ...
- Python | Pipenv官方推荐的python包管理工具
原文地址:https://cloud.tencent.com/developer/article/1355672 Pipenv - 官方推荐的的python包管理工具. Pipenv是一款旨在将所有包 ...
- [转载]Python 包管理工具
[转载]Python 包管理工具 最近由于机缘巧合,使用各种方法安装了一些Python包,所以对Python的包管理开始感兴趣.在网上找到一篇很好的文章:https://blog.zengrong.n ...
随机推荐
- data location nextcloud
/var/snap/nextcloud/common/nextcloud/data/ Adding files to Nextcloud using the command line https:// ...
- 网络数据请求get&post
- pycharm配置gitlab
一.安装Git 下载地址: https://git-scm.com/downloads 安装说明: https://git-scm.com/downloads 二.pycharm配置gitlab: 1 ...
- 2021SWPUCTF-WEB(三)
error 双引号没有提示的注入,,那就是报错注入了,肯定是个恶心的东西呜呜呜 ?id=1' and updatexml(1,concat(0x7e,(select right(flag,30) ...
- FileZilla连不上阿里云ECS服务器
(1)阿里云的公网IP (2)端口是22,网上很多介绍是21(当时也没去注意,后来发现一直连接不上去,后来才发现) 在FileZilla 中: - 用sftp协议连接Server ,需要用port 2 ...
- 后台运行&和nohup使用
这里首先先介绍一下 ctrl+z bg fg jobs 命令 下面为了观察效果,test1.sh脚本不停的输出hello ctrl + z ,会使一个正在运行的进程挂起(暂停)到后台,而且执行jobs ...
- Python内置函数:enumerate
enumerate(sequence, [start=0]) enumerate单词本身翻译为列举.枚举. 官方说明: enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组 ...
- GCC编译器编译过程
GCC编译器编译过程 #生成test可执行文件 g++ test.cpp -o test 其实,上述命令可以分解为以下几个步骤 1. 预处理-Pre-Processing # -E 选择指示编译器仅对 ...
- 499div2-E Border :裴蜀定理
这个定理就像类似学扩展欧几里得判断是否有解的条件,当时是ax+by = c:仅当c = k*gcd(a,b)时有解,其实也就是只要是公约数的倍数就行. 而裴蜀定理是多个未知量x1*a1+x2*a2+. ...
- tidyr包几个函数的用法
在R语言中,tidyr主要提供了一个类似Excel中数据透视表 (pivottable)的功能; gather和spread函数将数据在长格式和宽格式之间相互转化,应用在比如稀疏矩阵和稠密矩阵之间的转 ...