文件对象
- 普通的磁盘文件
- 类文件:ex.打开一个网页URL
文件内建函数
- open(file_name,access_mode='r',buffering=-1)
buffering 用于指示访问文件采用的缓冲方式,0表示不缓冲,1表示缓冲
一行数据,大于1表示使用给定值作为缓冲区大小,不提供或为负值代表使
用系统默认缓冲机制
- file() 与open()功能一致,可以替换,但建议使用open()
通用换行符支持UNS
行分隔符:(\r) | (\n) |(\r\n)
路径分隔符:/---\---:---
文件内建方法
- read() 读取给定参数字节的数目,默认直至末尾
- readline() 读取一行,包括行结束符
- readlines() 读取所有(剩余)行然后把它们作为字符串列表返回
- write()
- writelines() 接受一个字符串列表作为参数,行操作符不会自动加入,需要手动加入行结束符
- seek() 默认位置为0,代表开头,1,代表当前位置,2,代表文件末尾
- close()
- flush() 把内部缓冲区的内容立刻写入文件,暂时不会用(在open函数中有个参数buffering ,可以写到缓冲区)
- fileno()
- truncate() 将文件截取到当前文件指针位置或者给定size,以字节为单位
- tell() 返回文件位置指针的坐标
文件内建属性
- file.closed
- file.encoding
- file.mode
- file.name
- file.newlines 未读取到行分隔符时为None,只有一种行分隔符时为一个字符串,当文件有多种类型的行结束符时,则为一个包含素有当前所遇到的行结束符的列表
标准文件???暂时不理解干什么用的
-pass-
命令行参数
- sys.argv 命令行参数列表
文件系统
表 9.5 os 模块的文件/目录访问函数
--------------------------------------------
文件处理
mkfifo()/mknod()创建命名管道/创建文件系统节点
remove()/unlink() Delete file 删除文件
rename()/renames()重命名文件
*stat() 返回文件信息
symlink() 创建符号链接
utime() 更新时间戳
tmpfile() 创建并打开('w+b')一个新的临时文件
walk()生成一个目录树下的所有文件名
------------------------------------
目录/文件夹
chdir()/fchdir()改变当前工作目录/通过一个文件描述符改变当前工作目录
chroot()改变当前进程的根目录
listdir() 列出指定目录的文件
getcwd()/getcwdu()返回当前工作目录/功能相同, 但返回一个 Unicode 对象
mkdir()/makedirs() 创建目录/创建多层目录
rmdir()/removedirs() 删除目录/删除多层目录
--------------------------------------
访问/权限
access() 检验权限模式
chmod() 改变权限模式
chown()/lchown() 改变 owner 和 group ID/功能相同, 但不会跟踪链接
umask() 设置默认权限模式
-----------------------------------------
文件描述符操作
open() 底层的操作系统 open (对于文件, 使用标准的内建 open() 函数)
read()/write() 根据文件描述符读取/写入数据
dup()/dup2() 复制文件描述符号/功能相同, 但是是复制到另一个文件描述符
----------------------------------------
设备号
makedev()从 major 和 minor 设备号创建一个原始设备号
major()/minor() 从原始设备号获得 major/minor 设备号
表 9.6 os.path 模块中的路径名访问函数
-----------------------------------------
分隔
basename() 去掉目录路径, 返回文件名
dirname() 去掉文件名, 返回目录路径
join() 将分离的各部分组合成一个路径名
split() 返回 (dirname(), basename()) 元组
splitdrive() 返回 (drivename, pathname) 元组
splitext() 返回 (filename, extension) 元组
-----------------------------------------
信息
getatime() 返回最近访问时间
getctime() 返回文件创建时间
getmtime() 返回最近文件修改时间
getsize() 返回文件大小(以字节为单位)
-----------------------------------------
查询
exists() 指定路径(文件或目录)是否存在
isabs() 指定路径是否为绝对路径
isdir() 指定路径是否存在且为一个目录
isfile() 指定路径是否存在且为一个文件
islink() 指定路径是否存在且为一个符号链接
ismount() 指定路径是否存在且为一个挂载点
samefile() 两个路径名是否指向同个文件
永久存储模块 ???不理解、等填坑
--pass--