python遍历打印一个目录及其里面所有的文件和目录

# 深度遍历打印一个文件夹def print_all_dir(dir):    # 判断dir是文件夹    if os.path.isdir(dir):        # 如果是文件夹,先打印该文件夹        print(dir)        # 再遍历        for next_dir in os.listdir(dir):            # 递归调用,针对该文件夹下的每一个文件/文件夹继续进行遍历打印操作,加上之前文件的路径            print_all_dir(os.path.join(dir, next_dir))  # 判断dir是文件    elif os.path.isfile(dir):        # 直接打印        print(dir)  # 如果既不是文件夹又不是文件,则该路径不存在,    else:        # 给出提示并结束函数        print("该路径%s不存在,请您仔细检查!" % dir)        return

一般来说,对于一个路径的操作要先判断是否存在,但是在递归里面每一次调用都会判断是否存在,效率会比较低,因此将判断放到else只需要判断第一次传进来的路径是否存在即可。

原文地址:https://www.cnblogs.com/lynnk1ng/p/12344128.html

时间: 2024-12-11 17:27:13

python遍历打印一个目录及其里面所有的文件和目录的相关文章

Eclipse中的一个小插件easyExplorer--用于打开文件所在目录

最近格式化了硬盘,里面的诸多有价值的插件都没了,开发时需要打开java文件所在的目录,每次都很麻烦,实在无法忍受,就又重新下载了一个小插件,用以很方便的打开文件所在目录: easyExplorer 仅有7kb 一:官方下载地址: http://sourceforge.net/projects/easystruts/ 由于天朝网络问题,等个大概十来秒的时间出现下图: 二:配置方式: 直接将下载后的文件:org.sf.easyexplore_1.0.4.jar复制到eclipse下的plugins下

SHELL脚本--用于检测一个或者多个对象是文件或者目录

#!/bin/bash # # Judging the element is a file or a folder if [ $# -lt 1 ];then   echo "ERROE!! Usage: ckfile.sh ARGS1 [ARGS2...]"   exit 4 fi for i in `seq 1 $#` do if [ -f $1 ];then   echo $1 is a commom file elif [ -d $1 ];then   echo $1 is a 

[添加用户]解决useradd 用户后没有添加用户Home目录的情况,Linux改变文件或目录的访问权限命令,linux修改用户密码,usermod的ysuum安装包。飞

usermod的yum安装包: shadow-utils 将nobody用户添加到nogroup 组: usermod -g nogroup nobody cat /etc/passwd|grep nobody nobody:x:65534:65534:nobody:/var/lib/nobody:/bin/bash 第3个字段是65534:意思就是,UID(用户的ID)是500. 第4个字段是65534:意思就是.GID(用户的组ID)的500. 使用usermod -g nogroup no

Python学习笔记(二十五)操作文件和目录

摘抄:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431925324119bac1bc7979664b4fa9843c0e5fcdcf1e000 Python内置的os模块也可以直接调用操作系统提供的接口函数. >>> import os >>> os.name # 操作系统类型 'nt' 如果是posix,说明系统是Linux.Unix或M

得到一个正在运行进程的 EXE 文件所在目录

以前总是获取当前进程所在的目录,用 GetModuleFileName 即可. 如何在一进程中获取另一进程的 EXE 文件所在目录呢?步骤如下:(1) 先用 Remote Process Viewer 工具看看进程的窗体名:(2) 获取进程 ID:(3) 用 GetModuleFileName() 获取目录. 示例代码如下: 1 HWND hMXNavi = ::FindWindow(NULL,L"MXNavi"); 2 TCHAR tcNaviPath[MAX_PATH]; 3 DW

彻底删除"提示删除文件和目录"时出错的文件或目录

当删除文件是出现上图时  能够用以下的方法删除文件 策略一:系统大法 第一招  进程帮你搞定 很多时候乱码文件名称里的文件是explorer.exe进程联系在一起的. 假设要删除的话能够这样:首先命令行窗体,通过cd命令进入乱码名目录.按下Ctrl+Alt+Del调出任务管理器,单击"进程"选项卡,选中"explorer.exe",右键选择"结束进程",在命令提示符窗体中使用DEL命令来删除文件或目录,删除成功后,在命令提示符窗体中输入 expl

Linux 隐藏文件和目录,显示隐藏的文件和目录

linux隐藏文件命令 如果没有问价可先创建个 [[email protected] data]# touch a.txt 修改文件为隐藏属性 [[email protected] data]# mv a.txt .a.txt 这个时候,使用命令ll.ls等等是显示不出来隐藏的文件和目录的,可以选择以下任一命令进行显示: [[email protected] data]# l. . .. .201912110952 .a.txt [[email protected] data]# ls -d .

php递归遍历目录计算其大小(文件包括目录和普通文件)

<?php function countdir($path){ $size = 0; //size = 0; 跟 size = null; 怎么结果不一样 $path = rtrim($path, '/').'/'; //因为用户输入的路径带不带/都可以,所以我这里要处理一下 $handle = opendir($path); //打开一个句柄 while($file = readdir($handle)){ //读取句柄中的文件,包括目录和文件 if($file == '.' || $file

python paramiko 多线程批量执行指令及批量上传文件和目录

源代码: https://github.com/jy1779/be.git 环境需求: 1.python3 2.paramiko pip install --upgrade pip apt-get install libssl-dev pip3 install paramiko 3.执行权限 chmod +x becmd.py ln -s /root/be/bin/becmd.py /usr/local/sbin/becmd chmod +x besync.py ln -s /root/be/b