python文件打开的合法模式_Python3文件操作文件打开模式,python3

1. 文件打开模式

(1)三种基本模式:r、w、a

r 只读

w 删除原文,只写

a 保留原文(追加),只写

(2)附加后缀

b 表示二进制读写

+ 表示额外赋予读写权限

U 表示读取的换行全部改成\n

(3)三种模式的不同

无文件时: r 报错,w、a 新建

是否清除原文:r 、a 否,w 是

初始读取位置:r、w 开头,a 结尾

2. 文件操作

(1)列出文件

结果列表 = ls( 文件全路径 )

(2)创建文件 or 文件夹

mk( 文件全路径 )

(3)删除文件 or 文件夹

rm( 文件全路径 )

import os

import shutil

# region fileSystem

def exist(文件全路径):

return os.path.exists(文件全路径)

def isdir(文件全路径):

return os.path.isdir(文件全路径)

def ls(文件全路径, 选项="", 是否包含前缀=False):

选项 = 选项.lower()

if exist(文件全路径):

if isdir(文件全路径):

if ("p" in 选项) or ("r" in 选项):

return getDeepFilePaths(文件全路径, "*")

else:

if 是否包含前缀:

return stream(os.listdir(文件全路径))\

.map(lambda i: f"{文件全路径}/{i}").collect()

else:

return os.listdir(文件全路径)

else:

return [文件全路径];

else:

return []

def mkdir(文件全路径, 选项="-p"):

选项 = 选项.lower()

if not exist(文件全路径):

if ("p" in 选项) or ("r" in 选项):

os.makedirs(文件全路径)

else:

os.mkdir(文件全路径)

def mk(文件全路径, 选项="-p", 删除原文件 = False):

选项 = 选项.lower()

if exist(文件全路径):

if 删除原文件:

rm(文件全路径)

else:

return

文件后缀 = get文件后缀(文件全路径)

if not 文件后缀:

mkdir(文件全路径, 选项)

else:

所在目录 = get文件所在目录(文件全路径)

if 所在目录 and (not exist(所在目录)):

mk(所在目录, 选项)

with open(文件全路径,"a"):

pass

def rm(文件全路径, 选项="-rf"):

if exist(文件全路径):

if isdir(文件全路径):

if ("p" in 选项) or ("r" in 选项):

shutil.rmtree(文件全路径)

else:

try:

os.rmdir(文件全路径)

except:

stream(ls(文件全路径)).filter(lambda i: not isdir(i)) \

.forEach(lambda i: os.remove(i))

else:

os.remove(文件全路径)

def get文件后缀(文件全路径):

return os.path.splitext(文件全路径)[1]

def get文件名(文件全路径):

return os.path.basename(文件全路径)

def get文件所在目录(文件全路径):

return os.path.dirname(文件全路径)

def basename(文件全路径):

return get文件名(文件全路径)

def dirname(文件全路径):

return get文件所在目录(文件全路径)

# endregion fileSystem

缺失的工具类部分,删掉也无伤大雅

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值