Python读取文件夹下的所有文件实例代码


Posted in Python onApril 02, 2021

Python读取文件夹下的所有文件

 os.listdir(path)是得到在path路径下所以文件的名称列表。

     open(path)是打开某个文件。

     iter是python的迭代器。    

     所以读取某文件夹下的所有文件如下:

import os
path = "D:/Python34/news" #文件夹目录
files= os.listdir(path) #得到文件夹下的所有文件名称
s = []
for file in files: #遍历文件夹
  if not os.path.isdir(file): #判断是否是文件夹,不是文件夹才打开
   f = open(path+"/"+file); #打开文件
   iter_f = iter(f); #创建迭代器
   str = ""
   for line in iter_f: #遍历文件,一行行遍历,读取文本
    str = str + line
   s.append(str) #每个文件的文本存到list中
print(s) #打印结果

    你也可以把遍历文件夹的操作定义成一个函数,如果是文件夹就不断迭代遍历。进而读取文件夹下所有的文件(包括文件夹里中的文件)

Python批量读取文件夹下所有文件

现给定一个文件夹,下面有很多文件(可能是一天一个数据文件等),我们要读取该文件夹下面的所有文件,如:

Python读取文件夹下的所有文件实例代码

代码(包括删除空文件,有参考网上代码):

# -*- coding: utf-8 -*-
"""
Created on Wed Nov 20 23:28:00 2019

@author: 1
"""

import pandas as pd
import os

# 删除空文件夹,否则会报错
def traverse(filepath):
 # 遍历filepath下所有文件,包括子目录
 files = os.listdir(filepath)
 for fi in files:
  fi_d = os.path.join(filepath, fi)
  if os.path.isdir(fi_d): # 判断是否为文件夹
   if not os.listdir(fi_d): # 如果文件夹为空
    os.rmdir(fi_d) # 删除这个空文件夹
   else:
    traverse(fi_d)
  else:
   file = os.path.join(filepath, fi_d)
   if os.path.getsize(file) == 0: # 文件大小为0
    os.remove(file) # 删除这个文件
    
    
def get_file(path): # 创建一个空列表
 files = os.listdir(path)
 files.sort() # 排序
 list = []
 for file in files:
  if not os.path.isdir(path + file): # 判断该文件是否是一个文件夹  
   f_name = str(file)
   #    print(f_name)
   tr = '\\' # 多增加一个斜杠
   filename = path + tr + f_name
   list.append(filename)
 return (list)


if __name__ == '__main__':
 path = r'D:\workspace\python\m1\T-drive Taxi Trajectories\release\taxi_log_2008_by_id'
 traverse(path)
 list = get_file(path)
 for i in range(10): # 表示读10个文件
  df = pd.read_csv(list[i], sep=',')
  df.to_csv('taxi2.csv', mode='a', header=None)

总结

到此这篇关于Python如何读取文件夹下所有文件的文章就介绍到这了,更多相关Python读取文件夹内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python装饰器decorator用法实例
Nov 10 Python
python操作mongodb根据_id查询数据的实现方法
May 20 Python
用Python解决计数原理问题的方法
Aug 04 Python
Python选课系统开发程序
Sep 02 Python
Python 实现数据库(SQL)更新脚本的生成方法
Jul 09 Python
python ddt实现数据驱动
Mar 14 Python
python实现简易内存监控
Jun 21 Python
Python编程深度学习计算库之numpy
Dec 28 Python
Python使用到第三方库PyMuPDF图片与pdf相互转换
May 03 Python
Python中的引用知识点总结
May 20 Python
Python 实现opencv所使用的图片格式与 base64 转换
Jan 09 Python
win10安装tesserocr配置 Python使用tesserocr识别字母数字验证码
Jan 16 Python
如何用python识别滑块验证码中的缺口
python 实现定时任务的四种方式
Apr 01 #Python
python读取pdf格式文档的实现代码
Python中使用Lambda函数的5种用法
Apr 01 #Python
python 实现mysql自动增删分区的方法
Apr 01 #Python
pygame面向对象的飞行小鸟实现(Flappy bird)
如何用python插入独创性声明
You might like
简单解决新浪SAE无法上传文件的问题
2015/05/13 PHP
phalcon model在插入或更新时会自动验证非空字段的解决办法
2016/12/29 PHP
Jquery 动态添加按钮实现代码
2010/05/06 Javascript
javascript 面向对象 function类
2010/05/13 Javascript
能说明你的Javascript技术很烂的五个原因分析
2011/10/28 Javascript
jQuery 获取、设置HTML或TEXT内容的两种方法
2014/05/23 Javascript
论JavaScript模块化编程
2016/03/07 Javascript
JS中使用变量保存arguments对象的方法
2016/06/03 Javascript
jQuery插件Validation快速完成表单验证的方式
2016/07/28 Javascript
详解Nodejs的timers模块
2016/12/22 NodeJs
Ionic2调用本地SQlite实例
2017/04/22 Javascript
深入理解 webpack 文件打包机制(小结)
2018/01/08 Javascript
详解vue+webpack+express中间件接口使用
2018/07/17 Javascript
Node4-5静态资源服务器实战以及优化压缩文件实例内容
2019/08/29 Javascript
vue循环数组改变点击文字的颜色
2019/10/14 Javascript
vue项目实现减少app.js和vender.js的体积操作
2020/11/12 Javascript
JavaScript中Object、map、weakmap的区别分析
2020/12/15 Javascript
[51:17]Mineski vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
windows下wxPython开发环境安装与配置方法
2014/06/28 Python
python中argparse模块用法实例详解
2015/06/03 Python
python&MongoDB爬取图书馆借阅记录
2016/02/05 Python
Numpy中的mask的使用
2018/07/21 Python
python使用threading.Condition交替打印两个字符
2019/05/07 Python
python中的数组赋值与拷贝的区别详解
2019/11/26 Python
Python文件操作基础流程解析
2020/03/19 Python
tensorflow 动态获取 BatchSzie 的大小实例
2020/06/30 Python
python tqdm实现进度条的示例代码
2020/11/10 Python
服装采购员岗位职责
2014/03/15 职场文书
幼儿园教师的考核评语
2014/04/18 职场文书
学校法制宣传日活动总结
2014/11/01 职场文书
幸福家庭事迹材料
2014/12/20 职场文书
《倍数和因数》教学反思
2016/02/23 职场文书
学校2016年九九重阳节活动总结
2016/04/01 职场文书
pytorch训练神经网络爆内存的解决方案
2021/05/22 Python
关于@OnetoMany关系映射的排序问题,使用注解@OrderBy
2021/12/06 Java/Android
python pandas 解析(读取、写入)CSV 文件的操作方法
2022/12/24 Python