python目录与文件名操作例子

yipeiwu_com5年前Python基础

1、操作目录与文件名

#!/usr/bin/env python
#-*- coding: utf-8 -*-

import os,re
import shutil 
import time

用listdir搜索

def search_OFD_old(my_pattern, diretory):
  try:
    names = os.listdir(diretory)    
  except os.error:
    print "error"
    return
  for name in names:
    fullname = os.path.normpath(os.path.join(diretory, name))
    if os.path.isfile(fullname):
      result = my_pattern.search(name)
      if result and name.lower().endswith("txt"):
        shutil.copy(fullname, dest_dir)      
    elif os.path.isdir(fullname):
      search_OFD(my_pattern, fullname)

用walk函数搜索

def search_OFD(my_pattern, diretory):
  for root,dirs,files in os.walk(diretory):
    for filename in files:
      result = my_pattern.search(filename)
      if result and filename.lower().endswith("txt"):
        fullname = os.path.join(root, filename)
        shutil.copy(fullname, dest_dir)

目录不存在,则创建:

if not os.path.isdir(dest_dir):
  os.makedirs(dest_dir)

匹配名称

import re
pattern = re.compile("1ABC")
pattern.search(var)

相关文章

Python考拉兹猜想输出序列代码实践

考拉兹猜想(英语:Collatz conjecture),是指对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除以2,如此循环,最终都能够得到1。(摘自Wiki)...

python 读取txt中每行数据,并且保存到excel中的实例

使用xlwt读取txt文件内容,并且写入到excel中,代码如下,已经加了注释。 代码简单,具体代码如下: # coding=utf-8 ''' main function:主要实现...

解决sublime+python3无法输出中文的问题

Tools -> Build System -> Build New System { "cmd": ["/usr/local/bin/python3", "-u",...

Python redis操作实例分析【连接、管道、发布和订阅等】

本文实例讲述了Python redis操作。分享给大家供大家参考,具体如下: 一、redis redis是一个key-value存储系统。和Memcached类似,它支持存储的value...

Python迭代器和生成器介绍

Python迭代器和生成器介绍

迭代器 迭代器是一个实现了迭代器协议的对象,Python中的迭代器协议就是有next方法的对象会前进到下一结果,而在一系列结果的末尾是,则会引发StopIteration。 在for循...