栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python 找出两个文件夹中文件名相同的文件

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python 找出两个文件夹中文件名相同的文件

找出两个文件夹中文件名相同的文件 并把所需格式文件拷贝到另一个文件夹中

用python实现是比较简单的。

1.首先导入模块
import os 
import 
# 先说明下这两个模块的作用 
os 是 operation system 的缩写 包含文件和目录操作  
shutil是 shell utilities 的简写 包含文件的拷贝、删除、移动、压缩等操作

2.路径设置

strleft = “ left dir path”
strRight = "right dir path"
strDst = "dest dir path"

# os.listdir 作用是返回指定路径下所有文件和文件夹的名字,并存放于一个列表中 

# 本次demo假设路径文件夹下面没有其它文件夹

lsLeft = os.listdir(strleft)    
lsRight = os.listdir(strRight)

lsLeftFileName = [] #存放文件名 不包括后缀
lsRightFileName = []

for i in lsLeft:
    lsLeftFileName.append(i.split('.')[0]) 

注意,其中用到了 split函数。
参考 https://www.cnblogs.com/huchong/p/7349886.html博客内容:(感谢)
Python中有split()和os.path.split()两个函数:
split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)
os.path.split():按照路径将文件名和路径分割开
函数说明
split()函数
语法:str.split(str="",num=string.count(str))[n]
参数说明:
str:   表示为分隔符,默认为空格,但是不能为空('')。若字符串中没有分隔符,则把整个字符串作为列表的一个元素
num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量
[n]:   表示选取第n个分片
注意:当使用空格作为分隔符时,对于中间为空的项会自动忽略
os.path.split()函数
语法:os.path.split('PATH')
参数说明:
PATH指一个文件的全路径作为参数:
如果给出的是一个目录和文件名,则输出路径和文件名
如果给出的是一个目录名,则输出路径和为空文件名

for i in lsRight:
    lsRightFileName.append(i.split('.')[0])

3.逻辑判断

for i in lsRightFileName:
    if i in lsLeftFileName:
       shutil.copy(strRight + '/' + i +'.文件格式(eg .png)', strDst + '/' + i + '.文件格式(eg .png)')  #拷贝right dir 中文件名一样的指定格式的文件内容到目标文件夹

完整代码为:
strleft = r"left dir path"
strRight = r"right dir path"

strDst = r"dest dir path"

lsLeft = os.listdir(strleft)
lsRight = os.listdir(strRight)

lsLeftFileName = []
lsRightFileName = []

for i in lsLeft:
    lsLeftFileName.append(i.split('.')[0])

for i in lsRight:
    lsRightFileName.append(i.split('.')[0])

for i in lsRightFileName:
    if i in lsLeftFileName: #用于选择出两个文件夹中存在的文件名相同的文件
       shutil.copy(strRight + '/' + i +'.文件格式(eg .png)', strDst + '/' + i + '.文件格式(eg .png)')
       continue

请参考,如有错误请指正 。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/619284.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号