当前位置:   article > 正文

Python小记 文件操作 & os_with open(datafile,"a",buffering=1)

with open(datafile,"a",buffering=1)


open()

f = open(file_path, 
	mode='r',
	buffering=-1,
	encoding=None,
	errors=None,
	newline=None,
	closefd=True,
	opener=None)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • file_path文件完整路径
  • mode打开模式。默认只读
  • buffering缓冲区大小。可选
  • encoding编码类型。
  • errors编码错误处理方法。
  • newline控制通用换行符模式的行为。
  • closefd控制在文件关闭时是否彻底关闭。

mode:

模式说明
r只读,指针在开头
rb二进制只读,指针在开头
r+读写,指针在开头
rb+二进制读写,指针在开头
w只写,存在则覆盖,否则创建
wb二进制写,存在则覆盖,否则创建
w+读写,存在则覆盖,否则创建
wb+二进制读写,存在则覆盖,否则创建
a追加,存在则追加,否则创建,指针在末尾
ab二进制追加,存在则追加,否则创建,指针在末尾
a+读写,不存在则创建,指针在末尾
ab+二进制读写,不存在则创建,指针在末尾

File 类

属性说明
f.closed文件关闭则返回True,否则False
f.mode返回文件模式
f.name文件名称
函数功能
f.close()关闭
f.next()返回下一行
f.read([size])读取指定字节数。默认全部
f.readline([size])读取整行,包括'\n'
f.readlines([hints])读取所有行,返回列表。返回字节总和约为hint的行
f.write(str)写入字符串到文件
f.writeline(lines)写入字符串列表到文件
f.flush()刷新缓冲区。缓冲区写入文件
f.fileno()返回一个整型的文件描述符
f.isatty()判断文件是否连接到终端
f.seek(offset[, whence])设置文件当前位置
f.tell()返回文件当前位置
f.truncate([size])截取文件,截取的字节由size指定。默认为当前文件位置。
with open(file, 'a+', encoding='utf8') as f:
	lines = f.readlines()
	for line in lines:
		line = line.replace('http', 'https')
		f.write(line)
	f.writelines(['Hello world!', 'Hello Python!'])
	f.flush()
	f.close()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

os 对象

常用方法:

方法说明
os.getcwd()获取当前工作目录
os.listdir(path)返回path内文件及文件夹名称列表
os.mkdir(dir)创建文件夹
os.mkdirs(dirs)递归文件夹创建
os.remove(path)删除文件
os.rmdir(path)删除空目录
os.removedirs(path)删除目录
os.rename(src,dst)重名文件、目录
os.renames(old,new)递归的重命名目录
os.open(path,flags[,mode])打开文件
os.close(fd)关闭文件描述符fd
os.read(fd,n)从文件描述符fd读取n字节
os.write(fd,str)写入到文件描述符fd
os.chdir(path)改变工作路径
os.fchdir(fd)通过文件描述符改变工作路径
os.chroot(path)改变当前进程的根目录
os.fchroot(fd)通过文件描述符改变当前进程的根目录
os.access(path,mode)检验权限模式
os.walk(...)文章内跳转

os.open(file,flags[,mode])

  • mode 默认为 0777

flags:

  • os.O_RDONLY:只读
  • os.O_WRONLY:只写
  • os.O_RDWR:读写
  • os.O_NONBLOCK: 打开时不阻塞
  • os.O_APPEND:追加
  • os.O_CREAT:创建并打开新文件
  • os.O_TRUNC:打开一个文件并截断它的长度为0【必须有写权限】
  • os.O_EXCL:如果指定的文件存在,返回错误
  • os.O_SHLOCK:自动获取共享锁
  • os.O_EXLOCK:自动获取独立锁
  • os.O_DIRECT:消除或减少缓存效果
  • os.O_FSYNC:强制同步写入
  • os.O_NOFOLLOW:不追踪软连接

os.access(path,mode)
mode:

  • os.F_OK:测试path是否存在
  • os.R_OK:测试path是否可读
  • os.W_OK:测试path是否可写
  • os.X_OK:测试path是否可执行

os.walk(top[, topdown=True[, οnerrοr=None[, followlinks=False]]])

在树中游走、向上、向下输出在文件夹中的文件名。

  • top:要遍历的目录,可以是目录下的文件
  • topdown:Ture: 从上到下。否则相反
  • onerror:错误处理函数
  • followlinks:True:通过软链接访问目录

os.path

import os.path as op

  • op.exists(path):判断路径存在否
  • op.isfile(path):判断是否为文件
  • op.isdir(path):判断是否为目录
  • op.split(path):切片 目录+文件名【每次一级】
  • op.join(dir, name):组合 目录+文件
  • op.abspath(path):绝对路径
  • op.getsize(path):文件大小(字节数)
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/278312
推荐阅读
相关标签
  

闽ICP备14008679号