以下是软件下载链接: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包管理工具的更多相关文章

  1. Python包管理工具pip的基本使用

    1.简介 pip 是一个Python包管理工具,主要是用于安装 PyPI 上的软件包,可以替代 easy_install 工具. 2.pip安装 如果你安装的Python 2 >=2.7.9 或 ...

  2. python 包管理工具 pip 的配置

    近几年来,python的包管理系统pip 越来越完善, 尤其是对于 windows场景下,pip大大改善了python的易用性. https://www.cnblogs.com/yvivid/p/pi ...

  3. Python包管理工具和多版本环境管理

    1. Python包管理工具 在安装Python包的过程中,经常涉及到distutils.setuptools.distribute.setup.py.easy_install.easy_instal ...

  4. python包管理工具他们之间的关系

    python包管理工具之间的关系 现在的python包管理工具有很多,非常混乱,必须理清他们之间的关系才能更好的使用python构建强大的包关系系统工具. 首先:python官方推荐的第三方库是PyP ...

  5. python 包管理工具

    python 包管理工具 Python当前的包管理工具链是 easy_install/pip + distribute/setuptools + distutils,显得较为混乱. 而将来的工具链组合 ...

  6. Python 包管理工具解惑

    Python 包管理工具解惑 本文链接:http://zengrong.net/post/2169.htm python packaging 一.困惑 作为一个 Python 初学者,我在包管理上感到 ...

  7. 转载:Python 包管理工具解惑

    Python 包管理工具解惑 本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也尊重你的智商: 本站部分原创和翻译文章提供m ...

  8. Python包管理工具小结

    此文已由作者张耕源授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 作为一名接触Python有一段时间的初学者,越来越体会到Python的方便之处,它使人能更 多的关注业务本身 ...

  9. Python | Pipenv官方推荐的python包管理工具

    原文地址:https://cloud.tencent.com/developer/article/1355672 Pipenv - 官方推荐的的python包管理工具. Pipenv是一款旨在将所有包 ...

  10. [转载]Python 包管理工具

    [转载]Python 包管理工具 最近由于机缘巧合,使用各种方法安装了一些Python包,所以对Python的包管理开始感兴趣.在网上找到一篇很好的文章:https://blog.zengrong.n ...

随机推荐

  1. CSS3之伸缩布局

    一 主轴方向 在伸缩布局中, 默认伸缩项是从左至右的排版的 主轴的排版的方向默认就是row, 默认就是从左至右 1.默认情况下主轴是水平方向的, 但是也可以修改为垂直方向.只要看到flex-direc ...

  2. Python之路径处理

    路径处理,需导入 os包 1 import os # 导入 os 包 2 3 """获取运行脚本文件夹的路径""" 4 current_di ...

  3. C++ STL的简单应用(vector容器专题)

    #include <iostream> #include <string> #include <stdlib.h> #include <vector> ...

  4. postman打开白屏

    1.打开高级系统设置:2.在"高级"选项卡中,单击"环境变量":3.添加一个新的系统变量:POSTMAN_DISABLE_GPU=true4.关闭Postman ...

  5. 总结Unity查找物体的几种方法

    Unity中经常需要查找对象,对应的API也有好几种,各自有不同的适用场合. 1. GameObject.Find 通过名字或路径查找游戏对象. GameObject.Find("GameO ...

  6. “你帮我助”软件开发(Final)

    本项目是上海交通大学 CS-3331 软件工程课程大作业. 作业描述 "你帮我助"软件开发(Final) 新的功能需求: 物品有公共的信息(物品名称,物品说明,物品所在地址,联系人 ...

  7. 火狐浏览器调试eval源码

    火狐浏览器调试eval源码 firefox浏览器在网页调试上,有一个没法和chrome一比高下的功能,就是eval脚本的调试,有时前端架构使用了基于eval的方式,有时候可能是自己一个多行函数,每每遇 ...

  8. 【项目实战】SpringBoot+uniapp+uview2打造一个企业黑红名单吐槽小程序

    logo 避坑宝 v1.0.0 基于SpringBoot+uniapp企业黑红名单吐槽小程序 项目介绍 避坑宝 [避坑宝]企业黑红名单吐槽小程序是一个具有吐槽发布企业信息的一个平台,言论自由,评判自定 ...

  9. Java笔记第十三弹

    函数式接口 有且仅有一个抽象方法的接口 适用于Lambda使用的接口 @FunctionalInterface//表示函数式接口 函数式接口作为方法的参数 public class Main{ pub ...

  10. 写.jsp项目有感

    本次练习了一个简单的登录界面 我觉得在写这种类型的界面的时候,需要将各个需求分开,就以这次的登录界面为例展开说说 1.登录界面 输入框的居中问题.登录按钮的跳转问题.验证码图片的随机问题.快速注册的跳 ...