Python 操作文件的基本方法总结


Posted in Python onAugust 10, 2017

Python 操作文件

编程语言对文件系统的操作是一项必不可少的功能,各种编程语言基本上都有对文件系统的操作,最简洁的莫过于linux里面shell的操作了,其次,则是python,ruby等动态语言的操作,那么,今天散仙来看下,在python里面如何使用一些常用的操作文件功能。

主要包括:

1,创建一个文件
2,删除一个文件
3,创建一个目录
4,删除一个目录
5,拷贝,重命名,查看文件大小
6,列出某个目录下文件的数量
7,递归打印某个目录下的所有文件和目录
8,读写文件操作
9,剪切,或者拷贝整个目录或文件到另一个位置下

1,创建文件方法:

f=open("D://111.cc",mode="w",encoding="UTF-8") 
f.close()

2,删除一个文件

import os 
os.remove("D://222.ccc123") 
os.close()

3,创建一个目录或多个目录

os.mkdir("E://bb") 
os.makedirs("D:\\a\\b")

4,删除依旧用remove方法或多级删除

os.removedirs(path) 
os.remove()

5,拷贝,重命名,查看文件大小

import os 
import shutil 
#第一个参数是源文件,第二个拷贝文件 
shutil.copyfile("D://111.CC","D://222.ccc") 
os.rename("D://222.ccc","D://222.ccc123") 
os.stat("D://abc.txt").st_size

6,查看某个目录下文件数量:

def countDirs(dp): 
  tt=tuple(os.walk(dp)) 
  print("文件夹"+dp+"的信息:") 
  print("文件夹的个数: ",len(tt[0][1]),"文件的个数: ",len(tt[0][2])) 
 
d1="D:\\tomcat7\\bin" 
countDirs(d1)

结果如下:

文件夹D:\tomcat7\bin的信息: 
文件夹的个数: 0 文件的个数: 28 
 
Process finished with exit code 0

7,递归打印文件夹的方法:

def showAllDirs(dp): 
 
  tt=os.walk(dp); 
  for l in tt: 
    for lf in l[1]: 
      print("目录的路径是:",l[0]+"\\"+lf)

递归打印文件的方法:

def showAllDirsFiles(dirPath): 
    tt=os.walk(dirPath); 
    for l in tt: 
      for ll in l[2]: 
         print("文件的路径是:",l[0]+"\\"+ll)

8,读取文件的方法:

def readFile(): 
  f=open(r"D:///bbb.txt",encoding="UTF-8") 
  for line in f: 
    #去除多余的换行符 
    print(line.strip()) 
  f.close();

批量载入读取:

def readFile1(): 
  f=open(r"D:///bbb.txt",encoding="UTF-8") 
  while 1: 
    #print("j") 
    lines=f.readlines(10000); 
    if not lines: 
      #print("end") 
      break; 
    for line in lines: 
      print(line.strip()) 
 
  f.close()

写入文件例子:

def writeFile(): 
  a=list(); 
  a.append("a你好") 
  a.append("b哈喽") 
  a.append("c") 
  #a追加模式w覆盖模式 
  f=open("D://pp.txt",mode='a',encoding="UTF-8") 
  print("文件大小:",f) 
 
  for c in a: 
    f.write(c+"\n") 
  f.close() 
  print("写入成功!")

最后需要注意一点,注意路径的写法需要使用\\两个符号加转义实现,如果只写一个,可能会导致问题!

9,拷贝,或剪切的例子

#拷贝整个目录到另一个路径下 
shutil.copytree("E:\\11111111111\\a","E:\\11111111111\\b"); 
#剪切整个目录到另一个路径下 
shutil.move("E:\\11111111111\\a","E:\\11111111111\\cc")

以上就是python 操作文件方法的总结,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
python中正则的使用指南
Dec 04 Python
python中执行shell的两种方法总结
Jan 10 Python
使用python实现BLAST
Feb 12 Python
基于numpy.random.randn()与rand()的区别详解
Apr 17 Python
在OpenCV里使用Camshift算法的实现
Nov 22 Python
python os.path.isfile 的使用误区详解
Nov 29 Python
使用Python爬虫库requests发送表单数据和JSON数据
Jan 25 Python
python中sympy库求常微分方程的用法
Apr 28 Python
Python实现清理微信僵尸粉功能示例【基于itchat模块】
May 29 Python
python写文件时覆盖原来的实例方法
Jul 22 Python
解决Tkinter中button按钮未按却主动执行command函数的问题
May 23 Python
pytorch 权重weight 与 梯度grad 可视化操作
Jun 05 Python
Python 模拟登陆的两种实现方法
Aug 10 #Python
Python 网页解析HTMLParse的实例详解
Aug 10 #Python
关于Python中浮点数精度处理的技巧总结
Aug 10 #Python
Python 处理数据的实例详解
Aug 10 #Python
Python 由字符串函数名得到对应的函数(实例讲解)
Aug 10 #Python
关于Python中空格字符串处理的技巧总结
Aug 10 #Python
Python排序算法实例代码
Aug 10 #Python
You might like
关于ob_get_contents(),ob_end_clean(),ob_start(),的具体用法详解
2013/06/24 PHP
PHP中返回引用类型的方法
2015/04/03 PHP
php调整服务器时间的方法
2015/04/03 PHP
PHP MySql增删改查的简单实例
2016/06/21 PHP
一实用的实现table排序的Javascript类库
2007/09/12 Javascript
JQuery 初体验(建议学习jquery)
2009/04/25 Javascript
javascript 带有滚动条的表格,标题固定,带排序功能.
2009/11/13 Javascript
jQuery 创建Dom元素
2010/05/07 Javascript
最简单的js图片切换效果实现代码
2011/09/24 Javascript
jQuery-onload让第一次页面加载时图片是淡入方式显示
2012/05/23 Javascript
禁用页面部分JavaScript方法的具体实现
2013/07/31 Javascript
js实现点击获取验证码倒计时效果
2021/01/28 Javascript
jQuery Ajax传值到Servlet出现乱码问题的解决方法
2016/10/09 Javascript
Centos7 中 Node.js安装简单方法
2016/11/02 Javascript
js调用屏幕宽度的简单方法
2016/11/14 Javascript
js实现炫酷的左右轮播图
2017/01/18 Javascript
jQuery快速实现商品数量加减的方法
2017/02/06 Javascript
vue-router路由简单案例介绍
2017/02/21 Javascript
node.js中实现kindEditor图片上传功能的方法教程
2017/04/26 Javascript
vue项目中jsonp跨域获取qq音乐首页推荐问题
2018/05/30 Javascript
微信小程序项目总结之点赞 删除列表 分享功能
2018/06/25 Javascript
在移动端使用vue-router和keep-alive的方法示例
2018/12/02 Javascript
关于element-ui的隐藏组件el-scrollbar的使用
2019/05/29 Javascript
微信小程序npm引入vant-weapp的踩坑记录
2019/08/01 Javascript
手写Vue2.0 数据劫持的示例
2021/03/04 Vue.js
[02:38]2018DOTA2亚洲邀请赛赛前采访-VGJ.T
2018/04/03 DOTA
Python应用库大全总结
2018/05/30 Python
Python3+OpenCV2实现图像的几何变换(平移、镜像、缩放、旋转、仿射)
2019/05/13 Python
python实现五子棋人机对战游戏
2020/03/25 Python
python支付宝支付示例详解
2019/08/22 Python
英国第二大营养品供应商:Vitabiotics
2016/10/01 全球购物
三年级语文教学反思
2014/02/01 职场文书
关于青春的演讲稿
2014/05/05 职场文书
毕业生实习期转正自我鉴定
2014/09/26 职场文书
刘公岛导游词
2015/02/05 职场文书
Python time库的时间时钟处理
2021/05/02 Python