<PY><core python programming笔记>C9 文件和输入输出
来源:互联网 发布:samba默认端口号 编辑:程序博客网 时间:2024/05/18 22:18
C9 文件和输入输出
9.1文件对象
标准wenj url 独立的进程中进行一个命令通信
文件只是连续的字节序列
9.2open() #也作file()
file_object=open(file_path_name,access_mode='r',buffering=-1)
r只读 w清空再写(若无文件自动创建) u通用换行符支持 a追加
b二进制模式(unix统一采用,可以不写) + 可读可写
buffering 0表示不缓冲 其他数字表示缓冲几行
.close() 关闭文件 #记得
9.3文件内建方法
.read() size=-1或负值时直接读到末尾
.readline() 读一行 size默认-1 其他值时可能读入不是完整行
.readlines() 读取所有行
.xreadlines() 一次读一块 可以提高效率
.write() 写入 可以自动加上换行
.writelines() 写入列表 要手动加上换行符 \n 或者 \r\n
9.3.4 文件迭代(对于大文件特别好)
for eachline in f
9.3.5内建
.fileno() 返回打开文件的描述符
.flush() 直接吧内部缓冲区的数据立刻写入文件
.isatty() 判断是否类tty设备
.truncate() 将文件截取到当前文件指针位置或者到给定size
.next() 返回下一行
.seek() 可以移动文件指针到指定位置 0是开头 1是当前 2是末尾
.tell() 返回在当前文件的位置
.closed 验证是否关闭
.encoding 编码方式 默认None
.mode Access文件打开是使用的访问方式
.name 文件名
.newlines
.softspace
9.3.6有助于跨平台的os模块属性
linesep 用于在文件中做分割行符
sep 用来分隔文件路径名
pathsep 用于分隔文件路径
curdir 当前工作目录的字符串名称
pardir 当前工作父目录字符串名称
#要做跨平台 尽量使用这些符号
9.5三个标准文件 #程序一执行就产生了
sys.stdin 标准输入(键盘)
sys.stout 标准输出(到显示器的缓冲输出)
sys.sterr 标准错误(到屏幕的非缓冲输出)
9.6命令行参数
sys.argv 是命令行参数的列表
len(sys.agrv) 是命令行参数的个数
9.8文件系统
#os模块
文件处理
mkfifo()/mknod() 创建命名管道/创建文件系统节点
remove()/unlink() 删除文件
rename()/renames() 重命名问题
*stat 返回文件信息
symlink() 创建符号链接
utime() 更新时间戳
tmpfile() 创建并打开('w+b')的一个新的临时文件
walk() 生成一个目录树下的所有文件名
目录/文件夹
chdir()/fchdidr() 改变当前工作目录/通过一个文件描述符改变当前工作目录
chroot() 改变当前进程的根目录
listdir() 列出知道目录的文件 (根目录用双斜线)
getcwd()/getcwdu() 获得当前工作路径
mkdir()/makedirs() 创建目录/创建多层目录
rmdir()/removedirs() 删除目录/删除多层目录
访问/权限
access() 检验权限模式
chmod() 改变权限模式
chown()/lchown() 改变owner和group ID/功能相同,但不会跟踪
umask() 改变默认权限模式
文件描述符操作
open() 底层的操作系统open
read()/write() 根据文件描述符读取/写入数据
dup()/dup2() 复制文件描述符号/功能相同,但是是复制到另一个文件描述符
设备号
makedev() 从major和minor设置号创建一个原始设备号
major()/minor() 从原始设备号获得major/minor设备号
#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() 两个路径名是否执行同一个文件
9.8文件执行
在14章讨论
9.9永久存储模块
pikle 和marshal模块
dbm兼容模块
shelve模块
9.10相关模块
base64 binascii bz2 csv filecmp fileinput getopt/optparse
global/fnmatch gzip zlib shutil c/StringIO
tarfile tempfile uu zipfile
- <PY><core python programming笔记>C9 文件和输入输出
- <PY><core python programming笔记>C7 字典和集合类型
- <PY><core python programming笔记>C10 错误和异常
- <PY><core python programming 笔记>C1 概述
- <PY><core python programming笔记>C5 数字
- <PY><core python programming笔记>C12 模块
- <PY><core python programming笔记>C3 Python基础
- <PY><core python programming笔记>C4 Python对象
- <PY><core python programming笔记>C22 扩展Python
- <PY><core python programming笔记>C6 序列:字符串和列表和元组(一)
- <PY><core python programming笔记>C6 序列:字符串和列表和元组(二)
- <PY><core python programming笔记>C6 序列:字符串和列表和元组(三)
- <PY><core python programming笔记>C11 函数和函数式编程
- <PY><core python programming笔记>C2 快速入门
- <PY><core python programming笔记>C8 条件与循环
- <PY><core python programming笔记>C13 面向对象编程
- <PY><core python programming笔记>C14 执行环境
- <PY><core python programming笔记>C15 正则表达式
- Android--App缓存管理
- Bash 流程控制 if/else
- tshark简单应用指令
- WPF中的资源
- 好困啊,又困又饿
- <PY><core python programming笔记>C9 文件和输入输出
- 【剑指offer】两个栈实现一个队列
- Tomcat服务器性能优化
- Collections.synchronizedList 初次使用
- 到底什么时候休息呢 我想想
- Matlab错误说明
- 找出make install安装的文件
- URI和URL的区别
- HttpClient.cpp