Python3.4文件目录操作

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


主要包括:

  • 创建一个文件
  • 删除一个文件
  • 创建一个目录
  • 删除一个目录
  • 拷贝,重命名,查看文件大小
  • 列出某个目录下文件的数量
  • 递归打印某个目录下的所有文件和目录
  • 读写文件操作

创建文件方法

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

删除一个文件

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

创建一个目录或多个目录

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

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

os.removedirs(path)
os.remove()

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

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

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

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

递归打印文件夹的方法:

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)

读取文件的方法:

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("写入成功!")

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值