python下载文件到指定文件夹-Python 获取指定文件夹下的目录和文件的实现
经常有需要扫描目录,对文件做批量处理的需求,所以对目录处理这块做了下学习和总结。Python 中扫描目录有两种方法:os.listdir 和 os.walk。
一、os.listdir 方法
os.listdir() 方法用于返回指定的目录下包含的文件或子目录的名字的列表。这个列表以字母顺序。其得到的是仅当前路径下的文件名,不包括子目录中的文件,如果需要得到所有文件需要递归。 它也不包括 '.' 和 '..' 即使它在目录中。
语法格式如下:
os.listdir(path)
实例代码
def list_dir(file_dir):
'''
通过 listdir 得到的是仅当前路径下的文件名,不包括子目录中的文件,如果需要得到所有文件需要递归
'''
print' <><><><><><> listdir <><><><><><>'
print "current dir : {0}".format(file_dir)
dir_list = os.listdir(file_dir)
for cur_file in dir_list:
# 获取文件的绝对路径
path = os.path.join(file_dir, cur_file)
if os.path.isfile(path): # 判断是否是文件还是目录需要用绝对路径
print "{0} : is file!".format(cur_file)
if os.path.isdir(path):
print "{0} : is dir!".format(cur_file)
list_dir(path) # 递归子目录
二、os.walk 方法
os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情。
语法格式如下:
os.walk(top[, topdown=True[, οnerrοr=None[, followlinks=False]]])
方法参数说明:
top:要遍历的目录的路径
topdown:可选,如果为 True,则优先遍历 top 目录,以及 top 目录下的每一个子目录,否则优先遍历 top 的子目录,默认为 True
onerror: 可选, 需要一个 callable 对象,当 walk 异常时调用
followlinks:可选, 如果为 True,则会遍历目录下的快捷方式(linux 下是 symbolic link)实际所指的目录,默认为 False
args:包含那些没有 '-' 或 '--' 的参数列表
返回值: 三元组 (root, dirs, files)
root :所指的是当前正在遍历的目录的地址
dirs :当前文件夹中所有目录名字的 list (不包括子目录)
files :当前文件夹中所有的文件 (不包括子目录中的文件)
实例
def work_dir(file_dir):
print' <><><><><> work dir <><><><><>'
for root, dirs, files in os.walk(file_dir):
print' ========================================'
print "root : {0}".format(root)
print "dirs : {0}".format(dirs)
print "files : {0}".format(files)
for file in files:
try:
print'-----------------------------------'
file_name = os.path.splitext(file)[0]
file_suffix = os.path.splitext(file)[1]
file_path = os.path.join(root, file)
file_abs_path = os.path.abspath(file)
file_parent = os.path.dirname(file_path)
print "file : {0}".format(file)
print "file_name : {0}".format(file_name)
print "file_suffix : {0}".format(file_suffix)
print "file_path : {0}".format(file_path)
print "file_abs_path : {0}".format(file_abs_path)
print "file_parent : {0}".format(file_parent)
except Exception, e:
print "Exception", e
三、其他跟文件相关的常用方法
os.path.splitext():分离文件名和扩展名
file = "file_test.txt"
file_name = os.path.splitext(file)[0] # 输出:file_test
file_suffix = os.path.splitext(file)[1] # 输出:.txt
os.path.exists():判断文件或目录是否存在
os.path.isfile():判断是否是文件
os.path.isdir():判断是否是目录
os.path.dirname():获取当前文件所在的目录,即父目录
os.makedirs():创建多级目录
os.mkdir():创建单级目录
os.path.getsize():获取文件大小
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
python下载文件到指定文件夹-Python 获取指定文件夹下的目录和文件的实现相关推荐
- python读取目录_Python读取一个目录下所有目录和文件
本文实例讲述了Python读取一个目录下所有目录和文件的方法.分享给大家供大家参考,具体如下: 这里介绍的是刚学python时的一个读取目录的列子,给大家分享下: #!/usr/bin/python ...
- C#取得指定路径下所有目录及文件名称(可递归)
1using System.IO; 2 3/**//// <summary> 4/// 取得指定路径下所有目录及文件名称(可递归) 5/// </summary> ...
- 【Android 逆向】Android 系统文件分析 ( 根目录下的目录和文件 | /data/ 应用和用户数据目录 | /mnt/ 挂载其它设备目录 )
文章目录 一.根目录下的目录和文件 二.data 应用和用户数据目录 三.mnt 挂载其它设备目录 一.根目录下的目录和文件 在之前的几篇博客中 , 介绍了 /proc/ 目录下的进程相关目录文件 ; ...
- Linux中,显示当前目录位置、列出当前目录下的目录和文件、切换或进入目录。
一.显示当前目录位置 pwd 二.列出当前目录下的目录和文件 ls ls --help:得到所有关于ls的命令 三.切换或进入目录命令 进入根目录:cd / 目前所在目录:cd . 返回上一层:cd ...
- python获取文件夹下文件_Python 获取指定文件夹下的目录和文件的实现
经常有需要扫描目录,对文件做批量处理的需求,所以对目录处理这块做了下学习和总结.Python 中扫描目录有两种方法:os.listdir 和 os.walk. 一.os.listdir 方法 os.l ...
- 利用python批量查询企业信息_python实现批量获取指定文件夹下的所有文件的厂商信息...
本文实例讲述了python实现批量获取指定文件夹下的所有文件的厂商信息的方法.分享给大家供大家参考.具体如下: 功能代码如下: import os, string, shutil,re import ...
- Python 获取指定文件夹下的目录和文件
提出要求: 给定一个文件夹名称,让你得到该目录下的文件的路径,以及包含的文件夹下的文件路径. 在这里我们用到4个Python内置提供的函数: os.listdir(dir_path) -------& ...
- python下载后如何使用-如何使用Python通过HTTP下载文件
我有一个小的实用程序,可以用来按计划从网站上下载MP3,然后构建/更新我显然已添加到iTunes的播客XML文件. 创建/更新XML文件的文本处理是用Python编写的. 我在Windows .bat ...
- python下载的库要放到哪里-Python下载url并保存文件的三种方法
本节主要内容: 学习python下载Url并保存文件的方法. Python中通常是使用Http利用urllib或urllib2模块来下载url中的内容. 当然也可以利用ftplib从ftp站点下载文件 ...
最新文章
- R语言ggplot2可视化散点图实战:绘制基础散点图、为所有散点添加标签、只为大于阈值的散点添加标签
- javaScript中常见的几种报错类型
- 战神引擎修改服务器时间,修改战神引擎手游进入游戏公告内容教程
- 【linux】关于分析系统问题的前几分钟
- 视频API的发展方向
- ejb 2.0 3.0_EJB 3.0注入和查找简介
- windows文件路径大于MAX_PATH
- python-if条件判断与while/for循环
- 达内php第三次月考,达内第三次月考
- win7让任务管理器pid显示出来的方法
- 从零开始学PowerShell(4)数据的选择、排序与格式化
- Windows2003工组环境通过CA证书对加密WEB服务器
- HTML内置css改变文字效果,CSS+HTML文字效果
- VBA中让程序休眠 SLeep的方法
- python以读写方式打开文件_python 文件读写with open模式r,r+,w,w+,a,a+的区别
- Python学习之==接口开发
- 科技正在淘汰传统行业,这次的“倒霉鬼”是券商
- 广域网的应用场景是什么?
- C++语句 与简单方法
- 华为SNS2224的Zone配置
热门文章
- [BZOJ1007] [HNOI2008] 水平可见直线 (凸包)
- 超大 Cookie 拒绝服务攻击
- 【IT笔试面试题整理】 二叉树任意两个节点间最大距离
- 80 年代以来的操作系统 GUI 设计进化史
- 创业者必看:创业得出的10条血泪经验
- IT项目监理的三种模式比较
- Python web 项目的依赖管理工具
- C++知识点记录(C++ primer)
- 20181029NOIP模拟赛T2
- magic_quotes_gpc和magic_quotes_runtime的区别和用法详解