重新配置系统时,经常需要安装若干第三方库,可以用以下代码实现第三方库的批量安装,使用时只需要修改欲安装的第三方库的列表即可。
import os# libs 是想批量安装的第三方库的名字列表,可增减libs=["jieba","numpy","matplotlib","pillow","pandas","scipy","sympy","wordcloud","repuests","beautifulsoup4","wheel","pyinstaller","sqlalchemy","requests","Scrapy"]try:for lib in libs: # 遍历列表中的第三方库名,每次取其中一个第三方库的名字os.system("pip install "+lib) # 调用cmd并执行pip install 第三方库名print("安装成功") # 安装成功返回提示信息except:print("安装失败") # 安装失败的提示信息
系统运行一段时间后,由于第三方库经常更新,每个库都单独更新费时费力,可以使用以下代码实现批量更新第三方库。
# pip 21.3以后不可用import pipfrom subprocess import callfrom pip._internal.utils.misc import get_installed_distributionsfor dist in get_installed_distributions():call("pip install --upgrade " + dist.project_name, shell=True)
批量更新第三方库代码
# 批量更新python所有的三方库,网络收集代码# 可以使用pip list -o命令查看所有需要更新的库的列表import subprocess# pip显示需要更新的python列表com_list_o = 'pip list -o'# 执行命令并返回结果p = subprocess.Popen(com_list_o, shell=True, stdout=subprocess.PIPE)# 取命令返回结果,结果是一个二进制字符串,包含了我们上面执行pip list -o后展现的所有内容out = p.communicate()[0]# 二进制转utf-8字符串out = str(out, 'utf-8')# 切出待升级的包名, 并存入列表need_update = []for i in out.splitlines()[2:]:need_update.append(i.split(' ')[0])# 执行升级命令,每次取一个包进行升级,pip只支持一个包一个包的升级for nu in need_update:com_update = 'pip install -U {py}'.format(py=nu)print("执行命令:", com_update)subprocess.call(com_update)print("----------{com} 执行结束-----------\n".format(com=com_update))print("检查更新情况:")subprocess.call(com_list_o)
