cgai-io一个简单轻量又快速的文件/文件夹操作跨平台python库

Python CGAI-io:高效文件操作与管理工具
本文介绍了cgai-io库,一个能快速复制、删除、移动、重命名文件及目录的Python库,支持跨平台,且操作效率高于shutil。它还包含文件压缩、解压和目录结构保留等功能,通过pip安装并提供简单实例演示其使用方法。
一、简介

1.cgai-io是针对文件以及文件目录进行快速复制与删除的python库,底层调用的是系统原生命令,支持跨平台,效率比shutil要快得多。
2.支持目录删除保留原目录结构
3.支持文件及目录移动,重命名
4.支持文件及目录zip压缩与解压

二、安装
pip install cgai-io
三、快速上手

1.复制文件

from cgai_io.Copy import copyfile

src1 = r'D:\MZ\bg.jpg'
des1 = r'D:\Temp\Test\bg.jpg'

copyfile(src1,des1)

2.复制文件目录

from cgai_io.Copy import copydir

src2 = r'D:\MZ'
des2 = r'D:\Temp\Test\MZ'

copydir(src2,des2)

3.删除文件及文件目录

from cgai_io.Delete import delfile,deldir,delall


 #删除文件
path = r'\\192.168.1.248\3d\temp\a\cmd_mac.py'
delfile(path)


#删除文件夹
path = r'D:\BaiduNetdiskDownload\AA'
deldir(path)    #删除整个目录

path = r'D:\BaiduNetdiskDownload\BB'
deldir(path,keep_dir=True)  #保留空目录结构


#无论文件或文件夹都直接删除
path = r'D:\BaiduNetdiskDownload\ktk_103024'
delall(path)

四、官方案例(这个更简洁)
import cgai_io as ci

复制文件

src = r'D:\Temp\2.jpg'
des = r'D:\Temp\2_bak.jpg'
ci.copyfile(src,des)

复制文件目录

src = r'D:\Temp\AA'
des = r'D:\Temp\BB'
ci.copydir(src,des)

删除文件

des = r'D:\Temp\2_bak.jpg'
ci.delfile(des)

删除文件目录

des = r'D:\Temp\BB'
ci.deldir(des)

删除文件或目录

des = r'D:\Temp\BB'
ci.delall(des)

移动文件

src = r'D:\Temp\AA'
des = r'D:\Temp\BB'
ci.mvfile(src,des)

移动文件目录

src = r'D:\Temp\AA'
des = r'D:\Temp\testA\AA'
ci.mvdir(src,des)

移动文件或目录

src = r'D:\Temp\testA\AA'
des = r'D:\Temp\AA'
ci.mv(src,des)

重命名文件或目录

src = r'D:\Temp\AA\A.jpg'
des = r'D:\Temp\AA\B.jpg'
ci.rename(src,des)

src = r'D:\Temp\AA'
des = r'D:\Temp\BB'
ci.rename(src,des)

文件添加前缀

src = r'D:\Temp\BB\B.jpg'
prefix = 'img_'
ci.addPrefix(src,prefix)  # r'D:\Temp\BB\img_B.jpg'

文件目录添加前缀

src = r'D:\Temp\BB'
prefix = 'dir_'
ci.addPrefix(src,prefix) # r'D:\Temp\dir_BB'

文件添加尾缀

src =r'D:\Temp\dir_BB\img_B.jpg'
suffix = '_001'
ci.addSuffix(src,suffix) #D:\Temp\dir_BB\img_B_001.jpg

文件目录添加尾缀

src = r'D:\Temp\dir_BB'
suffix = '_v001'
ci.addSuffix(src,suffix)  # r'D:\Temp\dir_BB_v001'

文件打包

src = r'D:\Temp\dir_BB\img_B.jpg'
des = r'D:\Temp\dir_BB\B.zip'
ci.pack(src,des)

文件夹打包

src = r'D:\Temp\dir_BB'
des = r'D:\Temp\BB.zip'
ci.pack(src,des)

解压文件或目录

src_zip = r'D:\Temp\A\BB.zip'
des_dir = r'D:\Temp\A\C'
ci.unpack(src_zip,des_dir)
WARNING: Carrier board is not from a Jetson Developer Kit. WARNNIG: Jetson.GPIO library has not been verified with this carrier board, WARNING: and in fact is unlikely to work correctly. Traceback (most recent call last): File "/usr/local/lib/python3.6/dist-packages/adafruit_bus_device/i2c_device.py", line 172, in __probe_for_device self.i2c.writeto(self.device_address, b"") File "/usr/local/lib/python3.6/dist-packages/busio.py", line 116, in writeto return self._i2c.writeto(address, buffer, stop=stop) File "/usr/local/lib/python3.6/dist-packages/adafruit_blinka/microcontroller/generic_linux/i2c.py", line 49, in writeto self._i2c_bus.write_bytes(address, buffer[start:end]) File "/usr/local/lib/python3.6/dist-packages/Adafruit_PureIO/smbus.py", line 308, in write_bytes self._device.write(buf) OSError: [Errno 121] Remote I/O error During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.6/dist-packages/adafruit_bus_device/i2c_device.py", line 178, in __probe_for_device self.i2c.readfrom_into(self.device_address, result) File "/usr/local/lib/python3.6/dist-packages/busio.py", line 106, in readfrom_into return self._i2c.readfrom_into(address, buffer, stop=stop) File "/usr/local/lib/python3.6/dist-packages/adafruit_blinka/microcontroller/generic_linux/i2c.py", line 56, in readfrom_into readin = self._i2c_bus.read_bytes(address, end - start) File "/usr/local/lib/python3.6/dist-packages/Adafruit_PureIO/smbus.py", line 179, in read_bytes return self._device.read(number) OSError: [Errno 121] Remote I/O error During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/nvidia/cgai_ws/src/mission/scripts/duoji_test.py", line 8, in <module> kit=ServoKit(channels=16) File "/usr/local/lib/python3.6/dist-packages/adafruit_servokit.py", line 98, in init i2c, address=address, reference_clock_speed=reference_clock_speed File "/usr/local/lib/python3.6/di
最新发布
05-11
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值