Python操作文件目录

编程语言对文件系统的操作是一项必不可少的功能,各种编程语言基本上都有对文件系统的操作,最简洁的莫过于linux里面shell的操作了,其次,则是python,ruby等动态语言的操作,那么,今天散仙来看下,在python里面如何使用一些常用的操作文件功能。  主要包括:  1,创建一个文件  2,删除一个文件  3,创建一个目录  4,删除一个目录  5,拷贝,重命名,查看文件大小  6,列出某个目录下文件的数量  7,递归打印某个目录下的所有文件和目录  8,读写文件操作  9,剪切,或者拷贝整个目录或文件到另一个位置下  1,创建文件方法: 

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

2,删除一个文件 

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

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

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

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

  1. os.removedirs(path)   os.remove()

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

  1. 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,查看某个目录下文件数量: 

  1. 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)

结果如下: 

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

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

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

递归打印文件的方法: 

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

8,读取文件的方法: 

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

批量载入读取: 

  1. 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()

写入文件例子: 

  1. 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,拷贝,或剪切的例子 

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PHP在线

你真的了解php吗?

一、特性 1. 命名空间 命名空间用的比较多,不详细写了,记录几个值得注意的实践和细节。 多重导入 别这么做,这样写容易让人困惑。 <?php use Symf...

38450
来自专栏nummy

sphinx入门指南【1】快速入门

包含.rst文件的根目录称之为源文件目录,目录中还包含sphinx的配置文件conf.py。

20240
来自专栏闻道于事

Linux-看完这篇Linux基本的操作就会了

36030
来自专栏抠抠空间

Django之auth模块(用户认证)

auth模块简介 auth模块是对登录认证方法的一种封装,之前我们获取用户输入的用户名及密码后需要自己从user表里查询有没有用户名和密码符合的对象, 而有了a...

50750
来自专栏风中追风

分布式进阶__如何用zookeeper 实现分布式锁

        分布式锁主要用于在分布式环境中保护跨进程、跨主机、跨网络的共享资源实现互斥访问,以达到保证数据的一致性。

417160
来自专栏代码GG之家

深入Android源码系列(二) HOOK技术大作战

漫天的标题党的口水文打赏爆表,冷落了一群默默输出高质量文章的人群。真正的技术文章能否得到认可? 本文讲解内容有 hook技术原理探究 ...

28750
来自专栏人工智能LeadAI

Python中各个模块的介绍和使用

在Python中有一个概念叫做模块(module),这个和C语言中的头文件以及Java中的包很类似,比如在Python中要调用sqrt函数,必须用import关...

38180
来自专栏Python攻城狮

Python中的模块介绍和使用1.import2.from…import 3.from … import * 4.as 5.定位模块 6.模块制作7.模块中的__all__8.python中的包 9.

在Python中有一个概念叫做模块(module),这个和C语言中的头文件以及Java中的包很类似,比如在Python中要调用sqrt函数,必须用import关...

12610
来自专栏前端杂货铺

高吞吐koa日志中间件

Midlog中间件 node服务端开发中少不了日志打点,而在koa框架下的日志打点在多进程环境中日志信息往往无法对应上下文,而且在高并发下直接进行写buffer...

608100
来自专栏Java帮帮-微信公众号-技术文章全总结

高级框架-Struts2-day01【悟空教程】

Struts2是一种基于MVC模式的轻量级Web框架,它自问世以来,就受到了广大Web开发者的关注,并广泛应用于各种企业系统的开发中。目前掌握Struts2框架...

10930

扫码关注云+社区

领取腾讯云代金券