python 安装移动复制第三方库操作


Posted in Python onJuly 13, 2020

一、绪论

在使用python开发过程中经常会使用到第三方库。因此就涉及到了如何安装、复制移动。

二、安装方式

第三方库的安装方式

1、python自带包管理器:使用pip命令自动安装。例如:pip install xlwings

2、源码安装:在pypi下载的tar、zip包到本地安装。

2.1、pip安装方式详解

在windows环境先打开cmd命令窗口

进入到python安装路径的Scripts目录

执行pip install 库名字

2.2、源码安装

下载库文件压缩包,并解压。

在cmd命令窗口进入解压好的文件夹,通常会看见一个 setup.py 的文件

执行安装命令: python setup.py install

三、第三方包安装路径

第三方库的安装路径:\Python37\Lib\site-packages

四、第三方包复制移动

在没有网络的情况下非常适合从一个已经安装包的电脑上拷贝包到另一个没有安装包的电脑上。

1、进入第三方库安装的路径的文件夹。\site-packages

2、找到需要的包复制即可。注意一个库的包有两个文件,要同时复制。

python 安装移动复制第三方库操作

3、将包移动到另一台电脑上的\site-packages 粘贴即可使用。

补充知识:python 中使用 shutil 实现文件或目录的复制、删除、移动

警告: 即使是更高等级的文件复制功能 ( shutil.copy(), shutil.copy2() ) 也不能复制所有文件的元数据(metadata)。 在 POSIX 平台上,这意味着文件的属主和用户组会丢失,ACLs也一样。 在 Mac OS 上, 由于没有使用 the resource fork 和其他元数据,因此意味着 resources 会丢失以及文件类型和创建者ID将不会保持原有状态。 在 Windows 上, 文件所有者, ACLs 以及交换数据流(alternate data streams) 不会被复制。

文件夹和文件复制

shutil.copyfileobj(fsrc, fdst[, length])

复制类文件(file-like)对象 fsrc 的内容到类文件对象 fdst。 可选整数参数 length, 指定缓冲区大小。具体而言, length 的值为负数,复制操作不会将源数据分块进行复制。 默认的,为了避免不可控制的内存消耗,数据会被分块存入chunk中。 注意: 如果 fsrc 对象的当前文件位置不为 0 ,则只有从当前文件位置到文件末位的内容会被复制。

shutil.copyfile(src, dst)

复制文件 src 的内容(不包含元素据)到文件 dst 中。 dst 必须为一个完整的目标文件。 如果要将文件复制目标文件夹中,查看 shutil.copy() 。 src 和 dst 不能为同一个文件,否则会报错。 目标文件位置必须为可写状态,否则会触发 IOError。 如果 dst 已经存在,则会被覆盖。 特别的, 字符设备、块设备和管道不能使用此方法复制。 使用字符串指定src 和 dst 路径。

shutil.copymode(src, dst)

复制 src 的文件权限位到 dst 。 文件的内容、属主和用户组不会受影响。 使用字符串指定src 和 dst 路径。

shutil.copystat(src, dst)

复制文件 src 的文件权限位、最后访问 access 时间、最后修改 modification 时间和**标识 flags **到 dst。文件的内容、属主和用户组不会受影响。 使用字符串指定src 和 dst 路径。

shutil.copy(src, dst)

复制文件 src 到 dst 文件或文件夹中。 如果 dst 是文件夹, 则会在文件夹中创建或覆盖一个文件,且该文件与 src 的文件名相同。 文件权限位会被复制。使用字符串指定src 和 dst 路径。

shutil.copy2(src, dst)

与 shutil.copy() 类似,另外会同时复制文件的元数据。 实际上,该方法是 shutil.copy() 和 shutil.copystat() 组合。该方法相当于 Unix 命令的 ` cp -p `。

shutil.ignore_patterns(*patterns)

该工厂函数创建了一个可以被调用的函数, 该函数可以用于 shutil.copytree() 的 ** ignore 参数**的值, 以跳过正确匹配的文件和文件夹。 更多参考下面离职。

shutil.copytree(src, dst, symlinks=False, ignore=None)

递归复制整个 src 文件夹。 目标文件夹名为 dst,不能已经存在;方法会自动创建 dst 根文件夹。 文件夹权限和时间通过 shutil.copystat() 复制, 单独的文件通过 shutil.copy2() 复制。 如果 ` symlinks ` 为真, 源文件夹中的符号链接将会被保留,但是原链接的元数据不会被复制。如果值为假或被省略,则链接文件指向文件的内容和元数据复制到新文件夹树中。 如果指定了 ignore, 那么他必须是调用队列(callable),且作为 shutil.copytree() 的参数。参数包括文件夹本机及并通过 os.listdir()返回文件夹包含的内容。由于 shutil.copytree() 递归复制,因此 ignore 会在复制每个子文件夹的时候被调用。 callable必须返回一个由当前文件夹下的文件夹和文件所组成的队列(i.e. a subset of the items in the second argument); 这些文件夹和文件在复制过程中会被忽略。可以使用 shutil.ignore_patterns() 创建callable。

如果发生意外, shutil.Error() 返回错误原因。

移动和删除

shutil.rmtree(path[, ignore_errors[, onerror]])

删除整个目录树; path 必须指向一个文件夹,但不能是一个指向文件夹的符号链接。 如果 ` ignore_errors ` 值为真, 则删除失败时的信息将会被忽略。如果值为假或省略,那么这些错误将通过 onerror 指定的 handler 进行处理; 如果 onerror 被省略,则会 raise 一个异常。

如果指定了 onerror,则必须是包含三个参数: function, path 和 excinfo的 callable 。 第一个参数 ` function ` , 该函数用于 raise 异常;该函数可以是 os.path.islink(), os.listdir(), os.remove(), os.rmdir()。 第二个参数 path 为传递给第一个参数的路径。 第三个参数 excinfo 为 sys.exc_info()返回的异常信息。 通过 onerror raise 的异常不会被捕捉。

shutil.move(src, dst)

将一个文件或文件夹从 src 移动到 dst 如果 dst 已存在且为文件夹,则 src 将会被移动到 dst内。 如果如 dst 存在但不是一个文件夹, 取决于 os.rename() 的语义,dst 可能会被覆盖。 如果 dst 与 src 在相同的文件系统下, 则使用 os.rename() 。 否认则,将使用 shutil.copy2() 复制 src到 dst 并删除。

shutil.Error

该异常汇集文件操作时 raise 的异常。 例如 shutil.copytree(), the exception argument is a list of 3-tuples (srcname, dstname, exception).

以上这篇python 安装移动复制第三方库操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 过滤字符串的技巧,map与itertools.imap
Sep 06 Python
对于Python中线程问题的简单讲解
Apr 03 Python
使用Python下的XSLT API进行web开发的简单教程
Apr 15 Python
Python中模块string.py详解
Mar 12 Python
Python对列表中的各项进行关联详解
Aug 15 Python
Python实现的括号匹配判断功能示例
Aug 25 Python
APIStar:一个专为Python3设计的API框架
Sep 26 Python
3分钟学会一个Python小技巧
Nov 23 Python
使用python批量化音乐文件格式转换的实例
Jan 09 Python
快速了解Python开发环境Spyder
Jun 29 Python
python制作抽奖程序代码详解
Jan 15 Python
进行数据处理的6个 Python 代码块分享
Apr 06 Python
基于Python爬取fofa网页端数据过程解析
Jul 13 #Python
python利用os模块编写文件复制功能——copy()函数用法
Jul 13 #Python
python 制作python包,封装成可用模块教程
Jul 13 #Python
通过Python实现Payload分离免杀过程详解
Jul 13 #Python
python上selenium的弹框操作实现
Jul 13 #Python
python如何导入依赖包
Jul 13 #Python
python入门:argparse浅析 nargs='+'作用
Jul 12 #Python
You might like
兼容性最强的PHP生成缩略图的函数代码(修改版)
2011/01/18 PHP
PHP警告Cannot use a scalar value as an array的解决方法
2012/01/11 PHP
php _autoload自动加载类与机制分析
2012/02/10 PHP
解析获取优酷视频真实下载地址的PHP源代码
2013/06/26 PHP
在PHP中使用X-SendFile头让文件下载更快
2014/06/01 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
2019/11/23 PHP
Laravel框架下的Contracts契约详解
2020/03/17 PHP
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
js交换排序 冒泡排序算法(Javascript版)
2014/10/04 Javascript
js库Modernizr的介绍和使用
2015/05/07 Javascript
全面解析Bootstrap弹窗的实现方法
2015/12/01 Javascript
JavaScript优化以及前段开发小技巧
2017/02/02 Javascript
AngularJs用户登录问题处理(交互及验证、阻止FQ处理)
2017/10/26 Javascript
vue watch深度监听对象实现数据联动效果
2018/08/16 Javascript
vue展示dicom文件医疗系统的实现代码
2018/08/27 Javascript
Vue-router的使用和出现空白页,路由对象属性详解
2018/09/03 Javascript
通过vue-cli3构建一个SSR应用程序的方法
2018/09/13 Javascript
JavaScript遍历数组的方法代码实例
2020/01/14 Javascript
VUE子组件向父组件传值详解(含传多值及添加额外参数场景)
2020/09/01 Javascript
[43:33]EG vs Spirit Supermajor 败者组 BO3 第一场 6.4
2018/06/05 DOTA
python的urllib模块显示下载进度示例
2014/01/17 Python
介绍Python的Urllib库的一些高级用法
2015/04/30 Python
用tensorflow搭建CNN的方法
2018/03/05 Python
python字典值排序并取出前n个key值的方法
2018/10/17 Python
使用Python 正则匹配两个特定字符之间的字符方法
2018/12/24 Python
python 通过麦克风录音 生成wav文件的方法
2019/01/09 Python
Python中__repr__和__str__区别详解
2019/11/07 Python
茱莉蔻美国官网:Jurlique美国
2020/11/24 全球购物
中西医结合临床医学专业大学生自荐信
2013/09/28 职场文书
会计专业推荐信
2013/10/29 职场文书
新学期标语
2014/06/30 职场文书
课堂打架检讨书200字
2014/11/21 职场文书
2015年学生资助工作总结
2015/05/25 职场文书
呼啸山庄读书笔记
2015/06/29 职场文书
观看《筑梦中国》纪录片心得体会
2016/01/18 职场文书
2016年机关单位节能宣传周活动总结
2016/04/05 职场文书