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抓取百度首页的方法
May 19 Python
浅谈Python处理PDF的方法
Nov 10 Python
浅析Python装饰器以及装饰器模式
May 28 Python
在python中实现强制关闭线程的示例
Jan 22 Python
Scrapy-Redis结合POST请求获取数据的方法示例
May 07 Python
python pytest进阶之conftest.py详解
Jun 27 Python
使用python实现希尔、计数、基数基础排序的代码
Dec 25 Python
PyQt5高级界面控件之QTableWidget的具体使用方法
Feb 23 Python
Python itertools.product方法代码实例
Mar 27 Python
django实现后台显示媒体文件
Apr 07 Python
在jupyter notebook 添加 conda 环境的操作详解
Apr 10 Python
Matplotlib 绘制饼图解决文字重叠的方法
Jul 24 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
php实现网站插件机制的方法
2009/11/10 PHP
Php中文件下载功能实现超详细流程分析
2012/06/13 PHP
easyui的tabs update正确用法分享
2014/03/21 PHP
jQuery获取json后使用zy_tmpl生成下拉菜单
2015/03/27 PHP
示例详解Laravel的注册重构
2016/08/14 PHP
PHP中$GLOBALS与global的区别详解
2019/03/21 PHP
PHP ob缓存以及ob函数原理实例解析
2020/11/13 PHP
javascript与css3动画结合使用小结
2015/03/11 Javascript
实例讲解js验证表单项是否为空的方法
2016/01/09 Javascript
开启BootStrap学习之旅
2016/05/04 Javascript
js原生实现FastClick事件的实例
2016/11/20 Javascript
微信小程序开发之toast等弹框提示使用教程
2017/06/08 Javascript
Node.js 使用流实现读写同步边读边写功能
2017/09/11 Javascript
React Native使用Modal自定义分享界面的示例代码
2017/10/31 Javascript
详解Node.JS模块 process
2020/08/31 Javascript
js 数据类型判断的方法
2020/12/03 Javascript
python实现给字典添加条目的方法
2014/09/25 Python
基于tensorflow加载部分层的方法
2018/07/26 Python
wxpython多线程防假死与线程间传递消息实例详解
2019/12/13 Python
Python入门基础之数字字符串与列表
2021/02/01 Python
CSS3正方体旋转示例代码
2013/08/08 HTML / CSS
西海岸男士和男童服装:Johnnie-O
2018/03/15 全球购物
意大利奢侈品购物网站:Deliberti
2019/10/08 全球购物
销售人员自我评价怎么写
2013/09/19 职场文书
90后毕业生的求职信范文
2013/09/21 职场文书
机关门卫岗位职责
2013/12/30 职场文书
竞职演讲稿范文
2014/01/11 职场文书
测试工程师职业规划书
2014/02/06 职场文书
《蒙娜丽莎之约》教学反思
2014/02/27 职场文书
自主招生推荐信范文
2014/05/10 职场文书
乡镇干部先进性教育活动个人整改措施
2014/09/16 职场文书
安全先进班组材料
2014/12/26 职场文书
《围炉夜话》110句人生箴言,精辟有内涵,引人深思
2019/10/23 职场文书
JVM钩子函数的使用场景详解
2021/08/23 Java/Android
一小时迅速入门Mybatis之bind与多数据源支持 Java API
2021/09/15 Javascript
mysql 8.0.27 绿色解压版安装教程及配置方法
2022/04/20 MySQL