如何区分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

相关文章

Caused by: android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.B

一个bug日志 FATAL EXCEPTION: main03-25 14:24:07.724: E/AndroidRuntime(4135): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.syyx.jingubang.ky/com.anguotech.android.activity.Init

MySQL表名区分大小写设置

打开 mysql配置文件mysqld.cnf 打开文件,找到[mysqld]在下面增加一行 lower_case_table_names=0 (0:大小写敏感;1:大小写不敏感) 重启mysql服务 docker restart mysqlserver

Circuit Design 贴片晶振的区分

贴片晶振脚位的区分(非常详细,尤其是如何区分四脚的有源无源晶振): http://ruitairt.com/Article/tiepian_1.html 如何区分有源和无源晶振: http://ruitairt.com/Article/yzjddbfqsq_1.html

【python 文件操作】shutil模块和OS模块

总结 os包: rmdir, mkdir, listdir, remove, rename, chmod, chown, stat, symlink shutil包: copy, move os包 os包包括各种各样的函数,以实现操作系统的许多功能。这个包非常庞杂。os包的一些命令就是用于文件管理。我们这里列出最常用的: mkdir( path ) 创建新目录,path为一个字符串,表示新

Linux进程初识:OS基础、fork函数创建进程、进程排队和进程状态讲解

目录 1、冯诺伊曼体系结构 问题一:为什么在体系结构中存在存储器(内存)? 存储单元总结: 问题二:为什么程序在运行的时候,必须把程序先加载到内存? 问题三:请解释,从你登录上qq开始和某位朋友聊天开始,数据的流动过程。 2、操作系统 2.1操作系统的概念: 我们首先要明白什么是管理: 2.2为什么要有操作系统? 2.3操作系统如何保证稳定和安全呢?(利用系统调用函数解决)

Beyond Compare4.2.4 64位OS最新密钥

亲测可用,拿来主义 6TTCoWi2N0Pv+o2HGfqUpZfuaMhtf2zX0u1OuNeqTYkKKWh-CKwBWkPUG3+CiAQ2q4MNPbf0t8+gmPdo+Vyw64aU-zuQQt9d7Q6EcJ+T42by0E+kxf+q3QLs40H+RD3h5OLjFGpxClodRnTCNoAM39xsWm2aHZI0Z9KdXzLo1fo1OdNlaptoK17SsxNK-

Redis 命令不区分大小写,键值区分大小写Redis

今天才知道   Redis 命令不区分大小写   但键值区分大小写的

OS_程序的装入与链接

2024.09.05:操作系统程序的装入与链接学习笔记 第12节 程序的装入与链接 2.1 程序的装入2.1.1 绝对装入方式2.1.2 可重定位装入方式(静态重定位)2.1.3 动态运行时装入方式(动态重定位) 2.2 程序的链接2.2.1 静态链接方式2.2.2 装入时动态链接2.2.3 运行时动态链接 操作系统的第三章内存管理,在学习正式的管理策略之前,我们知

计算两个字符串的最大公共字符串的长度,字符不区分大小写

/*** */package testString;import java.util.Scanner;/***@author: Administrator*@date: 2016-12-28 下午01:08:30*/public class Main {public static void main(String[] args){Scanner sc=new Scanner(Syste

[linux命令] 随笔集 center OS 7 蛋疼的改动 一个菜鸟的奋斗shit~~~

2018年7月24日17:22:30 虚拟机查看ip地址  center OS 7  最小化安装. 查看ip地址:使用ifconfig已经不适用了 , 需要使用 ip addr 可以看到 关闭防火墙命令也不是 stop iptables.service 命令了,  看下百度经验吧7 关闭防火墙系列命令 关闭防火墙: systemctl stop firewalld.service