fastpippip 命令包
fastpip 是一个对 pip 命令行操作进行简单封装的包,可以在 Python3 源代码中实现方便的 pip 包管理操作。
注意,fastpip 仅支持 Windows 系统。
特点
- 包含国内 PyPi 镜像源字典 index_urls、PyEnv 类, all_py_paths 函数, cur_py_path 函数
- 各类自定义异常:文件查找异常, 参数值异常, 数据类型异常, 目录查找异常, 适用平台异常
- 以中文方式命名异常名
安装方法
- 用 pip 命令安装
pip install -U fastpip
-
从 gitee 安装最新开发版本(推荐)
pip install psutil pip install -U git+https://gitee.com/hrpzcf/fastpip@dev
使用示例
# -*- coding: utf-8 -*-
import sys
from fastpip import PyEnv
# 创建一个PyEnv类实例
# 初始化参数原型是PyEnv(path)
# 参数path是一个指向Python解释器(python.exe)所在目录的路径
# 例如 target_env = PyEnv(r'C:\Anaconda3\envs\py35')
# 初始化path为空字符串(即'')或省略,则自动查找Python目录
# 自动查找调用函数顺序:cur_py_path > all_py_paths[0],仍然找不到则抛出异常
target_env = PyEnv()
# 调用PyEnv类实例的outdated方法获取可更新的包列表
# 参数no_output控制是否在终端显示pip命令输出,这里设置为False表示输出
# 参数no_tips控制是否在终端显示类似"正在xxx..."的提示,这里设为False表示显示提示
# 如果在GUI程序中使用fastpip请将这两个参数都设置为True(默认)
# outdated返回值结构:
# [
# (包名, 已安装版本, 最新版本, 安装包类型),
# ...
# ]
outdated_pkgs = target_env.outdated(no_output=0, no_tips=0)
# 如果可更新列表为空则退出
if not outdated_pkgs:
print('没有发现可以更新的包。')
sys.exit(0)
# 询问是否安装所有可更新的包,回答非y则退出
if input('\n确认更新?y/n:').lower() != 'y':
sys.exit(0)
# 可更新列表不为空则按可更新的包名循环安装
for name, *_ in outdated_pkgs:
# 调用操作对象的install方法进行安装,安装模式upgrade(升级模式)参数设为True
target_env.install(name, upgrade=1, no_tips=0)
print('全部更新完成!')
可以使用 help 方法查阅更多使用帮助
import fastpip
help(fastpip)
评论