我喜欢在解决问题的同时,将解决方法封装并适应多种相似情况,以达到一劳永逸的效果。这样不仅可以得到一个小工具,而且后期遇到未考虑到的情况时,翻起原来整理的内容也理解的快。下面是获取指定文件夹中文件的函数,也是在网上学习时东拼西凑的结果。注意,其中文件名如1.txt,文件路径如D:\文件夹\1.txt;direct为第一层子级

建议自己码一遍,不想码?拿走别客气

import os#filePath 输入文件夹全路径
#mode
# 1递归获取所有文件名;
# 2递归获取所有文件路径;
# 3获取direct文件名;
# 4获取direct文件路径;
# 5获取direct文件名和direct子文件夹名;
# 6获取direct文件路径和direct子文件夹路径
def getFile(filePath, mode, type):listResult=[]if mode == 1:for parent, dirNames, fileNames in os.walk(rootdir):for fileName in fileNames:if type !="" and not fileName.endswith(type):continuelistResult.append(fileName)elif mode == 2:for parent, dirNames, fileNames in os.walk(rootdir):for fileName in fileNames:if type !="" and not fileName.endswith(type):continuelistResult.append(os.path.join(parent, fileName))elif mode == 3:listFileTitle = os.listdir(filePath)for each in listFileTitle:eachFilePath = os.path.join(filePath, each)if os.path.isfile(eachFilePath):if(type !="" and not eachFilePath.endswith(type)):continuelistResult.append(each)elif mode == 4:listFileTitle = os.listdir(filePath)for each in listFileTitle:eachFilePath = os.path.join(filePath, each)if os.path.isfile(eachFilePath):if type !="" and not eachFilePath.endswith(type):continuelistResult.append(eachFilePath)elif mode == 5:listTemp=os.listdir(filePath)for each in listTemp:eachFilePath = os.path.join(filePath, each)if (os.path.isfile(eachFilePath) and type !="" and not eachFilePath.endswith(type)):continue #是文件#指定了后缀#不是指定的后缀listResult.append(each)elif mode == 6:listFileTitle = os.listdir(filePath)for eachTitle in listFileTitle:eachFilePath=os.path.join(filePath, eachTitle)if (os.path.isfile(eachFilePath) and type !="" and not eachFilePath.endswith(type)):continue #是文件#指定了后缀#不是指定的后缀listResult.append(eachFilePath)return listResultrootdir = "D:\\Test"
outPath = "D:\\pyTest.txt"fileWriter = open(outPath, 'w')
for each in range(1,7,1):fileWriter.write('\n')fileWriter.write("mode==")fileWriter.write(str(each))fileWriter.write('\n')listFile=getFile(rootdir, each, '.PPT')for each in listFile:fileWriter.write(each+'\n')
fileWriter.close()

Python封装的获取文件目录的函数相关推荐

  1. python 封装函数_python封装函数

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python函数教程函数本身其实就相当于一个集装箱,她负责把我们之前写的那些代码 ...

  2. python 字符串输入时间_Python input()函数:获取用户输入的字符串

    input() 函数用于向用户生成一条提示,然后获取用户输入的内容.由于 input() 函数总会将用户输入的内容放入字符串中,因此用户可以输入任何内容,input() 函数总是返回一个字符串. 例如 ...

  3. python利器怎么编程-bluepy 一款python封装的BLE利器简单介绍

    1.bluepy 简介 bluepy 是github上一个很好的蓝牙开源项目,其地址在 LINK-1, 其主要功能是用python实现linux上BLE的接口. This is a project t ...

  4. python学习笔记(五)——函数基础和函数参数

    学函数的目的是什么?函数是做什么的? 学函数目的: ①不学函数容易造成:1.复杂度增大:2.组织结构不够清晰:3.可读性差:4.代码冗余:5.可扩展性差 ②学函数后可以: 1.使用函数可以提高编写的效 ...

  5. Python编程核心内容 ---- Function(函数)

    什么"大事"呢?下面将要介绍Python编程的核心内容之一--函数. 对于Python编程,函数的重要性不言而喻.重要的事情讲三遍:函数实在是太重要,太关键了. 引入函数 之前,我 ...

  6. 【李刚-21天通关Python】第四章:函数

    [李刚-21天通关Python]第四章:函数 第四章:函数 函数入门与定义函数 多返回值函数与递归函数 关键字参数与参数默认值 参数收集和逆向参数收集 变量作用域 局部函数 实操:定义计算N的阶乘的函 ...

  7. python计算球的体积的函数设计

    python计算球的体积的函数设计思路 首先:要先了解球的体积是如何计算的,据资料,V球 = 4πr³ / 3: 其次:π在python中可以用math标准库中的pi属性来获取: 第三:3次方,可以通 ...

  8. Python基础(三)_函数和代码复用

    三:函数和代码复用 (一)函数的基本使用 1.函数的定义 函数是一段具有特定功能的.可重用的语句组,用函数名来表示并通过函数名进行功能调用.函数也可以看作是一段具有名字的子程序,可以在需要的地方调用执 ...

  9. python葵花宝典第15式-匿名函数、内置函数、映射函数

    python葵花宝典第15式-匿名函数.内置函数.映射函数 15.1 lambda函数(匿名函数) 匿名函数并不是没有函数名字 注意: (1)函数的参数可以有多个,多个参数之间用逗号隔开 (2)匿名函 ...

最新文章

  1. 背包问题(多重背包+0-1背包)
  2. 让你受用一辈子的181句话
  3. [python爬虫] selenium爬取局部动态刷新网站(URL始终固定)
  4. mysql序列号生成_一文看懂mycat的6种全局序列号实现方式
  5. STL中vectortype的复制
  6. LeetCode 426. 将二叉搜索树转化为排序的双向链表(BST中序循环遍历)
  7. 设计模式(三)模版方法(行为型)
  8. 转载:制造业信息化:计划模拟APS软件驱动敏捷制造
  9. ECMAScript 5.0 基础语法(上)
  10. python 基本数据类型
  11. 思科又发紧急安全通告 IOS集群管理协议漏洞和Struts2漏洞 有影响产品列表及应对措施了...
  12. PySide使用QVariant
  13. macos同时运行多个版本php程序(nginx+php56+php72)
  14. An工具介绍之钢笔工具、铅笔工具与画笔工具
  15. 破解Root密码_wuli大世界_新浪博客
  16. iOS企业ipa(299)证书制作、打包发布全流程(亲测,成功)
  17. HCIE--路由交换--IGP部分实验详解
  18. NVDIMM为存储加速
  19. php是一种什么脚本语言
  20. 手游传奇代理一个版本大概多少

热门文章

  1. [转载] python数字类型(一)
  2. Python 基础课程第四天
  3. Mysql常用的几种join连接方式
  4. Effective C++条款05:了解C++默默编写并调用哪些函数
  5. BZOJ2325[ZJOI2011]道馆之战——树链剖分+线段树
  6. iis 回收工作进程时出错的解决办法
  7. Codeforces Round #237 (Div. 2)
  8. 使用SPA/GPA 参数--SAP内存参数设置SET /GET PARAMTER ID
  9. javacript 验证函数
  10. flash相册制作软件模板_儿童照片相册模板 怎么制作炫酷视频相册