Python遍历文件夹和读写文件的实现代码


Posted in Python onAugust 28, 2016

需 求 分 析

1、读取指定目录下的所有文件
2、读取指定文件,输出文件内容
3、创建一个文件并保存到指定目录

实 现 过 程

Python写代码简洁高效,实现以上功能仅用了40行左右的代码~ 昨天用Java写了一个写入、创建、复制、重命名文件要将近60行代码;

不过简洁的代价是牺牲了一点点运行速度,但随着硬件性能的提升,运行速度的差异会越来越小,直到人类无法察觉~

#-*- coding: UTF-8 -*- 

'''
1、读取指定目录下的所有文件
2、读取指定文件,输出文件内容
3、创建一个文件并保存到指定目录
'''
import os

# 遍历指定目录,显示目录下的所有文件名
def eachFile(filepath):
  pathDir = os.listdir(filepath)
  for allDir in pathDir:
    child = os.path.join('%s%s' % (filepath, allDir))
    print child.decode('gbk') # .decode('gbk')是解决中文显示乱码问题

# 读取文件内容并打印
def readFile(filename):
  fopen = open(filename, 'r') # r 代表read
  for eachLine in fopen:
    print "读取到得内容如下:",eachLine
  fopen.close()
  
# 输入多行文字,写入指定文件并保存到指定文件夹
def writeFile(filename):
  fopen = open(filename, 'w')
  print "\r请任意输入多行文字"," ( 输入 .号回车保存)"
  while True:
    aLine = raw_input()
    if aLine != ".":
      fopen.write('%s%s' % (aLine, os.linesep))
    else:
      print "文件已保存!"
      break
  fopen.close()

if __name__ == '__main__':
  filePath = "D:\\FileDemo\\Java\\myJava.txt"
  filePathI = "D:\\FileDemo\\Python\\pt.py"
  filePathC = "C:\\"
  eachFile(filePathC)
  readFile(filePath)
  writeFile(filePathI)

工欲善其事

最近尝试了几个常见的Python IDE,发现Subline tx2对中文的支持不好, NotePad++ 代码自定义颜色不方便。

用来用去还是Eclipse最顺手,装上PyDev插件之后,编写Python代码很方便;

Python遍历文件夹和读写文件的实现代码

作 者:蒋至乙

Python 相关文章推荐
跟老齐学Python之关于类的初步认识
Oct 11 Python
matplotlib给子图添加图例的方法
Aug 03 Python
python模糊图片过滤的方法
Dec 14 Python
Python实现打砖块小游戏代码实例
May 18 Python
pyqt弹出新对话框,以及关闭对话框获取数据的实例
Jun 18 Python
详解python statistics模块及函数用法
Oct 27 Python
Python函数式编程指南:对生成器全面讲解
Nov 19 Python
Python enumerate函数遍历数据对象组合过程解析
Dec 11 Python
Django Path转换器自定义及正则代码实例
May 29 Python
python 决策树算法的实现
Oct 09 Python
python3爬虫中多线程进行解锁操作实例
Nov 25 Python
python实现过滤敏感词
May 08 Python
python目录与文件名操作例子
Aug 28 #Python
python 简单的多线程链接实现代码
Aug 28 #Python
python使用电子邮件模块smtplib的方法
Aug 28 #Python
python daemon守护进程实现
Aug 27 #Python
Python+微信接口实现运维报警
Aug 27 #Python
python实现获取Ip归属地等信息
Aug 27 #Python
python简单实现获取当前时间
Aug 27 #Python
You might like
php遍历文件夹所有文件子文件夹函数代码
2013/11/27 PHP
成为好程序员必须避免的5个坏习惯
2014/07/04 PHP
PhpStorm连接服务器并实现自动上传功能
2020/12/09 PHP
静态的动态续篇之来点XML
2006/08/15 Javascript
extjs grid设置某列背景颜色和字体颜色的方法
2010/09/03 Javascript
js函数setTimeout延迟执行的简单介绍
2013/07/17 Javascript
仿百度输入框智能提示的js代码
2013/08/22 Javascript
jquery+ajax+C#实现无刷新操作数据库数据的简单实例
2014/02/08 Javascript
js实现同一页面多个不同运动效果的方法
2015/04/10 Javascript
简介alert()与console.log()的不同
2015/08/26 Javascript
VUEJS实战之利用laypage插件实现分页(3)
2016/06/13 Javascript
完美的js图片轮换效果
2017/02/05 Javascript
Web纯前端“旭日图”实现元素周期表
2017/03/10 Javascript
Agularjs妙用双向数据绑定实现手风琴效果
2017/05/26 Javascript
浅谈Node.js 子进程与应用场景
2018/01/24 Javascript
对layui中表单元素的使用详解
2018/08/15 Javascript
vue实现的树形结构加多选框示例
2019/02/02 Javascript
js实现无限层级树形数据结构(创新算法)
2020/02/27 Javascript
[06:07]刀塔密之二:攻之吾命受之吾幸
2014/07/03 DOTA
[02:09:59]火猫TV国士无双dota2 6.82版本详解(下)
2014/09/29 DOTA
[24:42]VP vs TNC Supermajor小组赛B组 BO3 第三场 6.2
2018/06/03 DOTA
django自定义Field实现一个字段存储以逗号分隔的字符串
2014/04/27 Python
对numpy 数组和矩阵的乘法的进一步理解
2018/04/04 Python
Django 再谈一谈json序列化
2020/03/16 Python
CSS3属性box-shadow使用详细教程
2012/01/21 HTML / CSS
HTML5实现可缩放时钟代码
2017/08/28 HTML / CSS
波兰多品牌运动商店:StreetStyle24.pl
2020/09/22 全球购物
2019年c语言经典面试题目
2016/08/17 面试题
档案信息化建设方案
2014/05/16 职场文书
教师节倡议书
2014/08/30 职场文书
办公楼租房协议书范本
2014/11/25 职场文书
2014年教育培训工作总结
2014/12/08 职场文书
高中生个性发展自我评价
2015/03/09 职场文书
运动会通讯稿300字
2015/07/20 职场文书
阿里云日志过滤器配置日志服务
2022/04/09 Servers