Python中如何找到想要的文件名
创始人
2024-11-17 10:01:21
0次

第一种:os.listdir

os.listdir() 方法用于返回指定的目录下包含的文件或子目录的名字的列表。这个列表以字母顺序。其得到的是仅当前路径下的文件名,不包括子目录中的文件,如果需要得到所有文件需要递归。 它也不包括 '.' 和 '..' 即使它在目录中。

语法格式为:

os.listdir(path)

举例:

def list_dir(file_dir):  '''    通过 listdir 得到的是仅当前路径下的文件名,不包括子目录中的文件,如果需要得到所有文件需要递归  '''  print'\n\n<><><><><><> listdir <><><><><><>'  print "current dir : {0}".format(file_dir)  dir_list = os.listdir(file_dir)  for cur_file in dir_list:    # 获取文件的绝对路径    path = os.path.join(file_dir, cur_file)    if os.path.isfile(path): # 判断是否是文件还是目录需要用绝对路径      print "{0} : is file!".format(cur_file)    if os.path.isdir(path):      print "{0} : is dir!".format(cur_file)      list_dir(path) # 递归子目录

第二种:os.walk

os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情。

语法格式为:

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

方法参数说明:

  1. top:要遍历的目录的路径

  2. topdown:可选,如果为 True,则优先遍历 top 目录,以及 top 目录下的每一个子目录,否则优先遍历 top 的子目录,默认为 True

  3. onerror: 可选, 需要一个 callable 对象,当 walk 异常时调用

  4. followlinks:可选, 如果为 True,则会遍历目录下的快捷方式(linux 下是 symbolic link)实际所指的目录,默认为 False

  5. args:包含那些没有 '-' 或 '--' 的参数列表

  6. 返回值: 三元组 (root, dirs, files)

  7. root :所指的是当前正在遍历的目录的地址

  8. dirs :当前文件夹中所有目录名字的 list (不包括子目录)

  9. files :当前文件夹中所有的文件 (不包括子目录中的文件)

举例:

def work_dir(file_dir):  print'\n\n<><><><><> work dir <><><><><>'  for root, dirs, files in os.walk(file_dir):    print'\n========================================'    print "root : {0}".format(root)    print "dirs : {0}".format(dirs)    print "files : {0}".format(files)    for file in files:      try:        print'-----------------------------------'                file_name = os.path.splitext(file)[0]        file_suffix = os.path.splitext(file)[1]        file_path = os.path.join(root, file)        file_abs_path = os.path.abspath(file)        file_parent = os.path.dirname(file_path)        print "file : {0}".format(file)        print "file_name : {0}".format(file_name)        print "file_suffix : {0}".format(file_suffix)        print "file_path : {0}".format(file_path)        print "file_abs_path : {0}".format(file_abs_path)        print "file_parent : {0}".format(file_parent)              except Exception, e:        print "Exception", e

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...