关于os的一系列问题:计算当前文件夹下所有文件的大小

转载 2017年01月03日 14:27:27

需求:编写一个程序,用户输入文件名以及开始搜索的路径,搜索该文件是否存在。如果遇到文件夹,则进入文件夹继续搜索。
程序实现如下:
请输入待查找的初始目录:E:\Python Program
请输入需要查找的目标文件:donelli.jpg
E:\Python Program\neural_artistic_style-master\images\donelli.jpg

tips:如果遇到文件夹,则进入文件夹继续搜索。需要使用递归。

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

import os
def search_file(start_dir,target_name):
    os.chdir(start_dir) #os.chdir() 方法用于改变当前工作目录到指定的路径。
    for each_file in os.listdir(os.curdir):
        if each_file==target_name:
            print (os.getcwd()+os.sep+each_file) #os.sep 根据你所处的平台,自动地采用相应的分割符号。
        if os.path.isdir(each_file):
            search_file(each_file,target_name) #递归调用
            os.chdir(os.pardir)  # 切换到上级目录 递归调用后,切记返回上一层目录


start_dir=input("请输入待查找的初始目录:")
target_name=input("请输入需要查找的目标文件:")
search_file(start_dir,target_name)

相关文章推荐

关于os的一系列问题:寻找目录中的视频文件,并存储路径

需求:编写一个程序,用户输入开始搜索的路径,查找该路径下(包含子文件夹内)所有的视频格式文件(要求查找MP4、rmvb、avi的格式即可),并创建一个文件(videoList.txt)存放所有找到的文...

(一一七)基本文件操作 -SDWebImage清除缓存 -文件夹的大小计算

在iOS的App沙盒中,Documents和Library/Preferences都会被备份到iCloud,因此只适合放置一些记录文件,例如plist、数据库文件。缓存一般放置到Library/Cac...

计算文件或文件夹大小的工具类

package com.ldw.tutorsplanpush.utils; import java.io.File; import java.io.FileInputStream; import j...

上传文件细节处理问题(包括中文乱码、限制文件大小、显示上传速度、删除临时文件,随机生成文件夹等)

上传文件细节处理问题 一  中文乱码问题 1.上传文件的中文乱码问题    用解析器的对象去调用setHeaderEncoding方法设置就行     // (1)创建一个解析器工厂   ...

python获取当前目录下子文件夹大小 然后大到小排序 询问是否删除某些子文件夹

1、用os.path.getsize获取文件大小 用os.walk遍历文件夹 用os.getcwd()获取当前路径 用os.listdir获取路径下的文件和文件夹 用os.popen('rm -r...

jquery 判断当前上传文件大小限制上传格式 搭配thinkphp实现上传即预览(模拟异步上传)

文件上传jquery 前台验证文件大小,文件格式,thinkphp实现上传预览,模拟异步上传的功能。
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)