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 上下文管理器使用方法小结
Oct 10 Python
读取本地json文件,解析json(实例讲解)
Dec 06 Python
Java与Python两大幸存者谁更胜一筹呢
Apr 12 Python
python3.7.0的安装步骤
Aug 27 Python
python读取TXT每行,并存到LIST中的方法
Oct 26 Python
python3.6+selenium实现操作Frame中的页面元素
Jul 16 Python
python pyinstaller打包exe报错的解决方法
Nov 02 Python
Python基于WordCloud制作词云图
Nov 29 Python
Python文件操作方法详解
Feb 09 Python
python实现二分类和多分类的ROC曲线教程
Jun 15 Python
解决python对齐错误的方法
Jul 16 Python
深入分析python 排序
Aug 24 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
mysql From_unixtime及UNIX_TIMESTAMP及DATE_FORMAT日期函数
2010/03/21 PHP
PHP 作用域解析运算符(::)
2010/07/27 PHP
php中时间轴开发(刚刚、5分钟前、昨天10:23等)
2011/10/03 PHP
php动态生成函数示例
2014/03/21 PHP
解决laravel session失效的问题
2019/10/14 PHP
jQuery之过滤元素操作小结
2013/11/30 Javascript
node.js中的fs.exists方法使用说明
2014/12/17 Javascript
浅谈JavaScript正则表达式分组匹配
2015/04/10 Javascript
ECMAScript6新增值比较函数Object.is
2015/06/12 Javascript
jquery判断复选框是否选中进行答题提示特效
2015/12/10 Javascript
JS结合bootstrap实现基本的增删改查功能
2016/07/22 Javascript
jQuery File Upload文件上传插件使用详解
2016/12/06 Javascript
weui框架实现上传、预览和删除图片功能代码
2017/08/24 Javascript
详解使用Visual Studio Code对Node.js进行断点调试
2017/09/14 Javascript
Vue开发实现吸顶效果的示例代码
2018/08/21 Javascript
解决layui追加或者动态修改的表单元素“没效果”的问题
2019/09/18 Javascript
nodejs使用socket5进行代理请求的实现
2020/02/21 NodeJs
JavaScript Dom实现轮播图原理和实例
2021/02/19 Javascript
[01:06:12]VP vs NIP 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
python迭代器实例简析
2014/09/25 Python
详解Python Socket网络编程
2016/01/05 Python
浅谈python配置与使用OpenCV踩的一些坑
2018/04/02 Python
Python3正则匹配re.split,re.finditer及re.findall函数用法详解
2018/06/11 Python
Python3+django2.0+apache2+ubuntu14部署网站上线的方法
2018/07/07 Python
python MNIST手写识别数据调用API的方法
2018/08/08 Python
Django实现前台上传并显示图片功能
2020/05/29 Python
丝芙兰新加坡官网:Sephora新加坡
2018/12/04 全球购物
2013年大学生的自我鉴定
2013/10/24 职场文书
初中校园广播稿
2014/02/02 职场文书
小学毕业感言150字
2014/02/05 职场文书
物理专业大学生职业生涯规划书
2014/02/07 职场文书
置业顾问岗位职责
2014/03/02 职场文书
年终总结会议主持词
2014/03/17 职场文书
工程资料员岗位职责
2015/04/13 职场文书
关于车尾的标语大全
2015/08/11 职场文书
Centos系统通过Docker安装并搭建MongoDB数据库
2022/04/12 MongoDB