python os.walk不递归_python-os.walk目录递归

递归删除文件或目录:

递归,os.walk

删除目录,shutil.rmtree

1 #-*- coding: UTF-8 -*-

2 importos.path,sys,shutil3

4 path = 'H:/test'

5

6

7 for root ,dirs ,files inos.walk(path):8 printroot,dirs,files9 for name indirs:10 if name == 'svn':11 printname12 shutil.rmtree(os.path.join(root,name))13 for name infiles:14 if name=='test.txt':15 os.remove(os.path.join(root,name))

python之os.walk()与os.path.walk()

os.walk()

函数声明:walk(top,topdown=True,οnerrοr=None)

1>参数top表示需要遍历的目录树的路径

2>参数topdown的默认值是"True",表示首先返回目录树下的文件,然后在遍历目录树的子目录.Topdown的值为"False"时,则表示先遍历目录树的子目录,

返回子目录下的文件,最后返回根目录下的文件

3>参数onerror的默认值是"None",表示忽略文件遍历时产生的错误.如果不为空,则提供一个自定义函数提示错误信息后继续遍历或抛出异常中止遍历

4>该函数返回一个元组,该元组有3个元素,这3个元素分别表示每次遍历的路径名,目录列表和文件列表

os,walk()实例:

1 importos2 defVisitDir(path):3 for root,dirs,files inos.walk(path):4 for filespath infiles:5 printos.path.join(root,filespath)6 if __name__=="__main__":7 path="/root"

8 VisitDir(path)

os.path.walk()

函数声明:walk(top,func,arg)

1>参数top表示需要遍历的目录树的路径

2>参数func表示回调函数,对遍历路径进行处理.所谓回调函数,是作为某个函数的参数使用,当某个时间触发时,程序将调用定义好的回调函数处理某个任务.

回调函数必须提供3个参数:第1个参数为walk()的参数tag,第2个参数表示目录列表,第3个参数表示文件列表

3>参数arg是传递给回调参数func的元组.回调函数的一个参数必须是arg,为回调函数提供处理参数.参数arg可以为空

os.path.walk()实例:

1 importos,os.path2 defVisitDir(arg,dirname,names):3 for filespath inname:4 printos.path.join(dirname,filespath)5 if __name__=="__main__":6 path="/root"

7 os.path.walk(path,VisitDir,())

os.path.walk()与os.walk()产生的文件名列表并不相同.os.path.walk()产生目录树下的目录路径和文件路径,而os.walk()只产生文件路径 如下面的例程:

1 #-*- coding: utf-8 -*-

2 importos3 for root, dirs, files in os.walk('/media/cdrom0'):4 open('mycd.cdc', 'a').write("%s %s %s" % (root,dirs,files))

完成的功能是/media/cdrom0下的目录文件写入到mycd.cdc中。

代码解释:

1. 声明是 utf-8 编码文本;

2. 引入了 os 模块;

3. 使用os.walk() 扫描光盘,并返回三个对象;

4. 使用open()打开mycd.cdc 文件对象,并声明成追加模式,逐行记录以上三个对象。

使用os.path.join

1 path='f:/testdata/01'

2

3 for root, dirs, files inos.walk(path):4 for name indirs:5 printos.path.join(root,name)6 for file infiles:7 print os.path.join(root,name,file)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/512733.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里巴巴 DevOps 工具体系

简介: 随着阿里巴巴多元化业务 20 多年的高速发展,技术体系经历了 web 时代、移动化时代、数据智能时代、云计算时代等多个重大变革。在这些变革中,开发者面对的技术体系、工具体系、知识体系也在不断进化。研发工具在其中起到了技术规模化和…

在java中使用quartz_如何在Java中使用Quartz Scheduler框架运行cron作业?

我在Java中使用Quartz Scheduler来运行cron作业 . 这是我第一次使用这个框架来运行cron作业,所以我有些困惑 .我正在关注这个tutorial以更好地理解如何使用Quartz框架 .我想每周和每个月都运行 JobA 所以我从基本的例子开始 -这是我到目前为止的例子 .public class …

云原生引领全云开发时代

简介: 云原生是近几年最火爆的技术热词之一,几乎所有的云计算产品都会或多或少跟云原生发生关联,云原生正在重塑整个软件的生命周期。但到底什么是云原生?云原生带来的最大的技术创新和未来机会是什么?以及&#xff0c…

中国首部智能交通微纪录片正式发布 探讨交通强国高质量发展路径

12月23日,由央视财经出品,中国首部智能交通题材微纪录片《大国交通-车路智行》正式发布。该微纪录片全景式呈现出中国交通领域智能化转型历程,探索了交通强国高质量发展的中国路径。据悉,《大国交通-车路智行》微纪录片共五集&…

Kettle on MaxCompute使用指南

简介: Kettle是一款开源的ETL工具,纯java实现,可以运行于Windows, Unix, Linux上运行,提供图形化的操作界面,可以通过拖拽控件的方式,方便地定义数据传输的拓扑。Kettle支持丰富的数据输入输出源&#xff0…

hive mysql 删除表_hive删除表和表中的数据

WebUploader UEditor chrome 点击上传文件选择框会延迟几秒才会显示 反应很慢chrome52.0.2743.80以上, accept: { title: Images, extensions: jpg,jpeg,png, mimeTypes: image/* } ...Android学习笔记之打钩显示输入的密码利用EditText作为密码输入框是个不错的选择(只需设置输…

使用AirFlow调度MaxCompute

简介: airflow是Airbnb开源的一个用python编写的调度工具,基于有向无环图(DAG),airflow可以定义一组有依赖的任务,按照依赖依次执行,通过python代码定义子任务,并支持各种Operate操作器,灵活性大…

css让背景图片显示透明遮罩_CSS项目测试(支持深色模式)

*事先声明:本文章教程教学、文章封面来源自[CSS]聚光灯项目 by CodingStartup起码课,且已经CodingStartup起码课授权允许转载!为了保持原有风格,本文始终保持与CodingStartup起码课的视频风格一致*在出现同样的代码块时&#xff0…

一文读懂阿里云直播技术是如何实现的

简介: 东京奥运会已落下帷幕。比赛期间,全球亿万观众蜂拥至各大转播平台观看奥运赛事,平台直播能力显的尤为重要。阿里云作为视频直播平台的技术提供商,凭借在产品技术、资源带宽、服务保障等方面优势,可为各大转播平台…

低代码发展专访系列之七:低代码的火爆需要不一样的声音么?

编辑 | 曹芊芊话题:低代码发展系列专访前言:2019年开始,低代码爆火。有人认为它是第四代编程语言,有人认为它是开发模式的颠覆,也有人认为是企业管理模式的变革……有很多声音,社区讨论很热烈。CSDN随后展开…

java 自定义 钩子_使用现有钩子的函数不能使用自定义do_action钩子

我知道add_action用于在钩子的位置调用函数 . 我使用了下面的add_action,它给了我需要的输出(这是WooCommerce中产品的价格):add_action( woocommerce_before_variations_form, woocommerce_single_variation, 10 );我在我构建的自定义插件中使用了上面的…

启动、内存、卡顿三大分析,用户体验就用它?

简介: 启动分析支持通过预置采集和个性化自定义两种方式定义启动阶段,可以分别查询首次启动、冷启动、热启动的情况效果,并可以与设备、系统、版本、地域等维度做交叉筛选查询。 随着大量应用涌入市场加入“App内卷之战”,终端用…

adb echo shell 覆盖_一次写shell脚本的经历记录

点击上方“我的小碗汤”,选择“置顶公众号”精品文章,第一时间送达redis在容器化的过程中,涉及到纵向扩pod实例cpu、内存以及redis实例的maxmemory值,statefulset管理的pod需要重启。所以把redis集群的状态检查放到了健康检查中&a…

当新零售遇上 Serverless

简介: Serverless 的出现给传统企业数字化转型带了更多机遇。 某零售商超行业的龙头企业,其主要业务涵盖购物中心、大卖场、综合超市、标准超市、精品超市、便利店及无人值守智慧商店等零售业态,涉及全渠道零售、仓储物流、餐饮、消费服务、…

如果还不懂如何使用 Consumer 接口,就来看这篇!

作者 | 阿Q来源 | 阿Q说代码背景在开发过程中我遇到这么一个问题:表结构:一张主表A ,一张关联表B ,表 A 中存储着表 B 记录的状态。场景:第一步创建主表数据,插入A表;第二步调用第三方接口插入B…

java实验册_Java实验报告册Java实验报告册.doc

Java实验报告册Java实验报告册《面向对象程序设计》实验报告与习题册2013 / 2014 学年 第1学期系 别 计算机科学与技术系专 业 班 级 姓 名 指导教师目 录项 目成 绩批改时间实验一 开发环境的搭建及使用实验二 JAVA程序设计基本语法实验三 面向对象程序设计实验四 输入和输出流…

学python就业到底如何_学习python后,就业如何?

Python技术相关人才,正是迎合了目前人工智能时代的发展趋势,Python作为人工智能的首选语言,其发展前景那是大大的好。学习python原因1、python是脚本语言,作为程序员至少应该掌握一本通用脚本语言,因为脚本语言与编译语…

京东:Flink SQL 优化实战

简介: 本文着重从 shuffle、join 方式的选择、对象重用、UDF 重用等方面介绍了京东在 Flink SQL 任务方面做的优化措施。 本文作者为京东算法服务部的张颖和段学浩,并由 Apache Hive PMC,阿里巴巴技术专家李锐帮忙校对。主要内容为&#xff1…

Spring Boot参数校验以及分组校验的使用

简介: 做web开发基本上每个接口都要对参数进行校验,如果参数比较少,还比较容易处理,一但参数比较多了的话代码中就会出现大量的if-else语句。虽然这种方式简单直接,但会大大降低开发效率和代码可读性。所以我们可以使用…

fetch() php,PHP:使用fetch()发送数据

我试图使用fetch()发送一些数据,但作为回报,我得到SyntaxError:意外的标记,在JSON中的位置23这就是我要做的fetch(/api.php, {method: POST,body: JSON.stringify({nom : "Issa",prenom: "Oule"}),headers : {"Content-Type" : "applicatio…