当前位置: 首页 > news >正文

联网电脑上安装好的Python库转移到离线设备上

联网电脑上安装好的Python库转移到离线设备上

要将已在联网电脑上安装好的Python库转移到离线设备上,可以按照以下步骤操作:

1. 导出已安装库列表

在联网电脑上,打开命令行工具(如CMD、PowerShell或终端),使用pip的freeze命令导出当前环境中所有已安装的库及其版本信息到一个文本文件中。命令如下:

pip freeze > requirements.txt

这将创建一个requirements.txt文件,包含了当前环境中所有库的精确版本信息。

2. 下载库的离线安装包

使用pip download命令下载所有列出的库的.whl文件(Wheel文件,Python的安装包格式之一)。可以指定一个目录来保存这些.whl文件。例如:

pip download -d ./packages -r requirements.txt

这会将所有需要的库及其依赖的.whl文件下载到当前目录下的packages文件夹中。

3. 传输文件到离线设备

requirements.txtpackages文件夹一起复制到离线设备上。可以使用USB驱动器、光盘或其他任何适合的文件传输方法。

4. 在离线设备上安装库

在离线设备上,确保已经安装了Python环境和pip工具。然后,使用以下命令安装库:

pip install --no-index --find-links=./packages -r requirements.txt

这个命令告诉pip不要从网络索引中查找包,而是从./packages目录中查找本地的.whl文件进行安装。

通过以上步骤,可以将联网电脑上的Python环境和库无缝迁移到离线设备上。注意,如果库之间有复杂的依赖关系,这个方法依然有效,因为pip download会一并下载所有必要的依赖。此外,使用.whl文件安装库通常比从源代码编译要快,也减少了在不同系统之间兼容性问题的风险。

另外(如果只想安装指定的.whl文件)

如果只想安装指定的.whl文件,而不是通过requirements.txt文件来安装所有依赖,你可以按照以下步骤操作:

获取.whl文件:

1. 可以从Python官网下载相应版本的安装包,并在离线设备上进行安装。
2. 可以使用pip download命令下载所需要的库的.whl文件:
pip download <library_name>==<version> -d <destination_directory>

其中:

< library_name> 是你想要下载的库的名称。
< version> 是可选的,指定库的版本号。
< destination_directory> 是想要保存.whl文件的目录路径。

eg:

pip download requests==2.25.1 -d C:\Downloads\whl_files

可以使用特定的下载源(例如,一个镜像站点),添加-i参数来指定下载源的URL。例如,使用中国科技大学的PyPI镜像源下载requests库:

pip download requests -i https://pypi.mirrors.ustc.edu.cn/simple/ -d C:\Downloads\whl_files

安装.whl文件

在离线设备上,打开命令行工具(CMD、PowerShell或终端),切换到包含.whl文件的目录。使用pip的安装命令来安装.whl文件。例如,如果有一个名为example_package-1.0.0-py3-none-any.whl的文件,可以使用以下命令进行安装:

pip install example_package-1.0.0-py3-none-any.whl

这个命令会安装指定的.whl文件。如果.whl文件有依赖其他库,而这些依赖库也已经以.whl文件的形式提供,需要先安装依赖库的.whl文件,再安装主包的.whl文件。

检查安装结果

安装完成后,可以使用pip listpip show命令来检查包是否已正确安装。

注意:
1… 如果.whl文件有特定的系统或Python版本要求,确保离线设备上的Python环境与.whl文件兼容
2… 如果.whl文件之间存在依赖关系,需要先安装依赖的.whl文件,否则可能会导致安装失败。

相关文章:

  • MFC通用静态库制作与使用
  • 10-热点文章-定时计算
  • 六、企业级架构缓存篇之memcached
  • AcWing-游戏
  • 02 _ 分布式系统的指标:啥是分布式的三围
  • 计算机体系结构(1) 介绍和基础
  • iOS MT19937随机数生成,结合AES-CBC加密算法实现。
  • C语言从入门到实战————文件操作
  • 【头歌-Python】 函数自学引导
  • 探索IOT物联网接入数据中台架构的关键要素
  • Vue-B站学习笔记
  • 美国MDO4054B-3泰克混合域示波器
  • 【Redis】NoSQL之Redis的配置和优化
  • 本地MinIO存储服务通过Java程序结合cpolar实现远程连接上传文件
  • 深度优先搜索算法C实现
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • [rust! #004] [译] Rust 的内置 Traits, 使用场景, 方式, 和原因
  • [数据结构]链表的实现在PHP中
  • 5分钟即可掌握的前端高效利器:JavaScript 策略模式
  • Android 初级面试者拾遗(前台界面篇)之 Activity 和 Fragment
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • JavaScript DOM 10 - 滚动
  • Mysql5.6主从复制
  • Promise面试题,控制异步流程
  • tab.js分享及浏览器兼容性问题汇总
  • unity如何实现一个固定宽度的orthagraphic相机
  • Yeoman_Bower_Grunt
  • 程序员该如何有效的找工作?
  • 初识 beanstalkd
  • 从0搭建SpringBoot的HelloWorld -- Java版本
  • 分布式熔断降级平台aegis
  • 基于Android乐音识别(2)
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 听说你叫Java(二)–Servlet请求
  • 小程序、APP Store 需要的 SSL 证书是个什么东西?
  • ionic入门之数据绑定显示-1
  • 我们雇佣了一只大猴子...
  • ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  • ​【已解决】npm install​卡主不动的情况
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • #在 README.md 中生成项目目录结构
  • (1)STL算法之遍历容器
  • (vue)页面文件上传获取:action地址
  • (WSI分类)WSI分类文献小综述 2024
  • (附源码)spring boot球鞋文化交流论坛 毕业设计 141436
  • (六)什么是Vite——热更新时vite、webpack做了什么
  • (转)nsfocus-绿盟科技笔试题目
  • ***通过什么方式***网吧
  • .NET 设计模式—适配器模式(Adapter Pattern)
  • .NET 线程 Thread 进程 Process、线程池 pool、Invoke、begininvoke、异步回调
  • .NET:自动将请求参数绑定到ASPX、ASHX和MVC(菜鸟必看)
  • .net后端程序发布到nignx上,通过nginx访问
  • .NET企业级应用架构设计系列之结尾篇
  • /bin/rm: 参数列表过长"的解决办法
  • :如何用SQL脚本保存存储过程返回的结果集