如何区分os.walk()与os.scandir()

2024-05-14 04:04
文章标签 walk 区分 os scandir

本文主要是介绍如何区分os.walk()与os.scandir(),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

os.walk()

import os
for dirpath, dirname, files in os.walk('./'):# dirpath 当前——路径# dirname 当前——路径——下——文件夹名——列表# files 当前——路径——下——文件——列表

dirpath 当前路径 ./

dirname 当前路径下面文件夹名称组成的列表,共3个文件夹分别是package01、package02、长期未使用

files 当前路径下所有的文件名称组成的列表,共10个文件,分别是1.py、 2.py、3.py、4.py、test.py、案例1.py、案例2.py、案例3.py、案例4.py

接着package01文件夹下,的文件夹名称列表,的文件名称列表
接着package02文件夹下,的文件夹名称列表,的文件名称列表
接着长期未使用文件夹下,的文件夹名称列表,的文件名称列表

./
**********
['package01', 'package02', '长期未使用']
**********
['1.py', '2.py', '3.py', '4.py', 'test.py', '案例1.py', '案例2.py', '案例3.py', '案例4.py']
**********
./package01
**********
[]
**********
['1.py', '2.py', '3.py', '4.py', '案例1.py', '案例2.py', '案例3.py']
**********
./package02
**********
['package02']
**********
[]
**********
./package02\package02
**********
[]
**********
[]
**********
./长期未使用
**********
[]
**********
['13-05-2024_长期未使用.zip']
**********

os.scandir()

当前文件夹下的全部内容,包括文件夹和文件等

    for file in os.scandir(dirpath):print(file)

代码运行效果

<DirEntry '1.py'>
<DirEntry '2.py'>
<DirEntry '3.py'>
<DirEntry '4.py'>
<DirEntry 'package01'>
<DirEntry 'package02'>
<DirEntry 'test.py'>
<DirEntry '案例1.py'>
<DirEntry '案例2.py'>
<DirEntry '案例3.py'>
<DirEntry '案例4.py'>
<DirEntry '长期未使用'>
<DirEntry '1.py'>
<DirEntry '2.py'>
<DirEntry '3.py'>
<DirEntry '4.py'>
<DirEntry '案例1.py'>
<DirEntry '案例2.py'>
<DirEntry '案例3.py'>
<DirEntry 'package02'>
<DirEntry '13-05-2024_长期未使用.zip'>

代码实现深度目录便利

import os
for dirpath, dirname, files in os.walk('./'):# dirpath 当前——路径# dirname 当前——路径——下——文件夹名——列表# files 当前——路径——下——文件——列表for file in os.scandir(dirpath):print(file)# print(dirpath)# print("*" * 10)# print(dirname)# print("*" * 10)# print(files)# print("*" * 10)

这篇关于如何区分os.walk()与os.scandir()的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/987694

相关文章

如何在OS中获得SSD的寿命耐久度

这里还是以DELL的机器为例,通常DELL的服务器带有的磁盘会有显示SSD耐久度,当然也不排除SSD更新太快,有部分SSD无法在戴尔的服务器上查看到SSD的耐久度,但实际上本身只要是SSD肯定还是可以有方法查看SSD的耐久度,可以通过OS的方式进行查看,以RHEL7.9为例 首先我们需要下载安装DELL的PERCCLI的阵列卡工具,该工具可以很好的查看DELL服务器上的阵列卡对应的信息,如阵列卡

array_walk()使用

bool  array_walk (  array &$array ,  callable $callback [,  mixed $userdata = NULL ] ) 将用户自定义函数 funcname 应用到 array 数组中的每个单元。 array_walk() 不会受到 array 内部数组指针的影响。array_walk() 会遍历整个数组而不管指针的位置。 array

颠覆多跳事实验证!Causal Walk 前门调整技术引领去偏新纪元

Causal Walk: Debiasing Multi-Hop Fact Verifcation with Front-Door Adjustment 论文地址: Causal Walk: Debiasing Multi-Hop Fact Verification with Front-Door Adjustment| Proceedings of the AAAI Conference

我的OS X系统使用小结

最近硬盘出现了故障,为了恢复确认问题,我的Windows电脑就一直运行坏道检测程序,暂时将工作迁移到我的MacBook Pro(后面简称为MBP)上进行。这里简单总结下自己是如何使用MBP进行做的。 原本计划是用我的小米游戏笔记本,但是不知为何,即便是非游戏模式,风扇偶尔也会狂转,产生很大的噪音。相反,MBP非常安静,就是有点烫手。 我的MBP是17年款,13寸屏幕,蝶式键盘。为了不烫手

QNX OS微内核系统

微内核架构 微内核(Microkernel)架构是一种操作系统架构模式,其核心思想是尽量将操作系统的基本功能压缩在最小的核心中,而将其他服务(如设备驱动、文件系统、网络协议等)放在用户空间中运行,从而增加系统的灵活性和安全性,这种架构有几个主要特点和优势: 最小化核心:微内核仅包括最基本的系统管理功能和最少的抽象层,如进程通信、基本的调度和内存管理。模块化:系统服务和驱动程序作为独立的模块运行

在Mac OS上使用Visual Studio Code创建C++ Qt的Hello World应用

引言 Qt是一个跨平台的应用程序和用户界面框架,而Visual Studio Code是一个功能强大的编辑器,两者结合可以极大地提升开发效率。本文将指导你在Mac OS上使用Visual Studio Code创建一个简单的Qt 'Hello World'窗口应用。 环境准备 确保你的MacBook OS运行最新的操作系统。安装Homebrew,Mac OS的包管理器。通过Homebrew安装

OS复习笔记ch12-2

辅存管理 文件分配问题 创建文件一次性分配最大空间吗?分配连续的分区空间,分区多大?用什么数据结构记录? (1)分配方式 类似于#ch8-3调页机制,文件分配也有预分配和动态分配的形式。 一般拷贝/备份文件的时候,我们明确得知文件的大小,可以采用预分配,其他基本都是动态分配。 (2)分区大小 portion size 分区/簇大小(连续分区) 如果采用固定分区,存在两个极端 分配可

关于linux下/srv、/var和/tmp的职责区分

/srv :主要用来存储本机或本服务器提供的服务或数据。(用户主动生产的数据、对外提供服务) /srv contains site-specific data which is served by this system. /var :系统产生的不可自动销毁的缓存文件、日志记录。(系统和程序运行后产生的数据、不对外提供服务、只能用户手动清理)(包括mail、数据库文件、日志文件) /

RTA_OS基础功能讲解 2.10-调度表

RTA_OS基础功能讲解 2.10-调度表 文章目录 RTA_OS基础功能讲解 2.10-调度表一、调度表简介二、调度表配置2.1 同步 三、到期点配置四、启动调度表4.1 绝对启动4.2 相对启动4.3 同步启动 五、到期点处理六、停止调度表6.1 重新启动被停止的调度表 七、切换调度表八、选择同步策略8.1 隐式同步8.2 显式同步8.2.1 计数器约束8.2.2 指定同步边界8.

Mac OS 如何在命令行下启动Docker

现象 当用 Mac air作为服务器时,远程登录上去后想使用 docker,却报如下错: Cannot connect to the Docker daemon at unix:///Users/aborn/.docker/run/docker.sock. Is the docker daemon running? 原因分析 因为 docker 有一个守护进程,如果这个守护进程没有起来,就