Python实现的根据文件名查找数据文件功能示例

yipeiwu_com5年前Python基础

本文实例讲述了Python实现的根据文件名查找数据文件功能。分享给大家供大家参考,具体如下:

#-*- coding: UTF-8 -*-
import os
import shutil
AllFiles=[]
NameFiles=[]
def findFie(filePath):
 pathDir = os.listdir(filePath)
 for allDir in pathDir:
  # print(allDir)
  AllFiles.append(allDir)
  #pass
#filepath = 'C:\\Users\\IBM_ADMIN\\Desktop\\cognos\\datastage\\71&72\\71\\71sns'
#copyfile = 'C:\\Users\\IBM_ADMIN\\Desktop\\cognos\\datastage\\71&72\\71mtp'
filepath = 'C:\\Users\\IBM_ADMIN\\Desktop\\cognos\\datastage\\71&72\\72\\72sns'
copyfile = 'C:\\Users\\IBM_ADMIN\\Desktop\\cognos\\datastage\\71&72\\72mtp'
shutil.rmtree(copyfile)
os.mkdir(copyfile)
findFie(filepath)
def readFile():
 readFile = open('./jobname')
 i = 0
 for eachLine in readFile:
  i= i + 1
  #print(eachLine)
  NameFiles.append(eachLine.replace('\n','')) # 去掉换行符
readFile()
#字符串比较
def doTheCompare():
 for x in NameFiles:
  print(x)
  for y in AllFiles:
   if x == y :
    copyFrom = os.path.join(filepath,x)
    copyTo = os.path.join(copyfile,x)
    shutil.copyfile(copyFrom,copyTo)
   else:
    pass
    #print ("file not find under sns process,thanks .please check with wumi.")
doTheCompare()

附:这里再补充一个更为简单的文件搜索功能示例:

# -*- coding:utf-8 -*-
import os
def search(path=".", name="1"):
  for item in os.listdir(path):
    item_path = os.path.join(path, item)
    if os.path.isdir(item_path):
      search(item_path, name)
    elif os.path.isfile(item_path):
      if name in item:
        print(item_path)
if __name__ == "__main__":
  search(path=r"D:\360Downloads",name="dll")

更多Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

使用Python操作excel文件的实例代码

使用的类库 pip install openpyxl 操作实现 •工作簿操作 # coding: utf-8 from openpyxl import Workbook...

跟老齐学Python之Import 模块

跟老齐学Python之Import 模块

认识模块 对于模块,在前面的一些举例中,已经涉及到了,比如曾经有过:import random (获取随机数模块)。为了能够对模块有一个清晰的了解,首先要看看什么模块,这里选取官方文档中...

linecache模块加载和缓存文件内容详解

linecache模块 接触到linecache这个模块是因为前两天读attrs源码的时候看到内部代码引用了这个模块来模拟一个假文件,带着一脸疑问顺便读了一下这个模块的源码,发现其实也就...

pytorch如何冻结某层参数的实现

在迁移学习finetune时我们通常需要冻结前几层的参数不参与训练,在Pytorch中的实现如下: class Model(nn.Module): def __init__(sel...

使用Python的SymPy库解决数学运算问题的方法

摘要:在学习与科研中,经常会遇到一些数学运算问题,使用计算机完成运算具有速度快和准确性高的优势。Python的Numpy包具有强大的科学运算功能,且具有其他许多主流科学计算语言不具备的免...