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计算两个日期相差天数的方法示例
May 23 Python
使用python 和 lint 删除项目无用资源的方法
Dec 20 Python
Python实现购物车购物小程序
Apr 18 Python
完美解决在oj中Python的循环输入问题
Jun 25 Python
Python求两点之间的直线距离(2种实现方法)
Jul 07 Python
Django实现发送邮件找回密码功能
Aug 12 Python
python实现在多维数组中挑选符合条件的全部元素
Nov 26 Python
详解Python修复遥感影像条带的两种方式
Feb 23 Python
mac在matplotlib中显示中文的操作方法
Mar 06 Python
如何在django中实现分页功能
Apr 22 Python
Matplotlib.pyplot 三维绘图的实现示例
Jul 28 Python
python如何实现图片压缩
Sep 11 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
在Zeus Web Server中安装PHP语言支持
2006/10/09 PHP
默默小谈PHP&MYSQL分页原理及实现
2007/01/02 PHP
thinkphp文件处理类Dir.class.php的用法分析
2014/12/08 PHP
学习php设计模式 php实现合成模式(composite)
2015/12/08 PHP
tp5(thinkPHP5框架)captcha验证码配置及验证操作示例
2019/05/28 PHP
Extjs Ext.MessageBox.confirm 确认对话框详解
2010/04/02 Javascript
用jquery实现等比例缩放图片效果插件
2010/07/24 Javascript
分享一个自定义的console类 让你不再纠结JS中的调试代码的兼容
2012/04/20 Javascript
手写的一个兼容各种浏览器的javascript getStyle函数(获取元素的样式)
2014/06/06 Javascript
nodejs 实现模拟form表单上传文件
2014/07/14 NodeJs
js+csss实现的一个带复选框的下拉框
2014/09/29 Javascript
分享两段简单的JS代码防止SQL注入
2016/04/12 Javascript
文件上传插件SWFUpload的使用指南
2016/11/29 Javascript
基于Bootstrap的网页设计实例
2017/03/01 Javascript
DataTables添加额外的查询参数和删除columns等无用参数实例
2017/07/04 Javascript
JavaScript+CSS相册特效实例代码
2017/09/07 Javascript
html中通过JS获取JSON数据并加载的方法
2017/11/30 Javascript
vue-baidu-map 进入页面自动定位的解决方案(推荐)
2018/04/28 Javascript
Vue源码中要const _toStr = Object.prototype.toString的原因分析
2018/12/09 Javascript
微信小程序实现发送验证码按钮效果
2018/12/20 Javascript
微信小程序开发之转发分享功能
2019/10/22 Javascript
VUE使用axios调用后台API接口的方法
2020/08/03 Javascript
[01:51]历届DOTA2国际邀请赛举办地回顾 TI9落地上海
2018/08/26 DOTA
Python help()函数用法详解
2014/03/11 Python
Python获取脚本所在目录的正确方法
2014/04/15 Python
DJANGO-ALLAUTH社交用户系统的安装配置
2014/11/18 Python
Python抽象和自定义类定义与用法示例
2018/08/23 Python
小学毕业家长寄语
2014/01/19 职场文书
电脑专业个人求职信范文
2014/02/04 职场文书
股份合作协议书范本
2014/04/14 职场文书
小学“向国旗敬礼”网上签名寄语活动总结
2014/09/27 职场文书
毕业设计工作总结
2015/08/14 职场文书
广告策划的实习心得体会总结!
2019/07/22 职场文书
经典励志格言:每日一句,让你每天充满能量
2019/08/16 职场文书
解决Go gorm踩过的坑
2021/04/30 Golang
MySQL 数据类型详情
2021/11/11 MySQL