文件系统和文件
一.定义
文件系统是OS用于明确磁盘或分区上文件的方法和数据结构--即在磁盘上组织文件的方法
- 计算机文件,是存储在某种长期储存设备或临时存储设备中的一段数据流,并且归属于计算机文件系统管理之下。
总的来说:
- 文件是计算机中有OS管理的具有名字的存储区域
- 在Linux系统上,文件被看做是字节序列
二.python打开文件
-
python的内置函数open()用于打开文件和创建文件对象
语法:
open(name[,mode [,bufsize]])\
-
open方法可以接受三个参数:文件名,模式和缓冲区参数
- open函数返回的是一个文件对象
- mode:指定文件的打开模式
- bufsize:定义输出缓冲
0表示无输出缓冲
1表示使用缓冲
负数表示使用系统默认设置
正数表示使用近似指定大小的缓冲
简单模式:
-
r
只读open('文件路径','r')
-
w
写入 -
a
附加
注意 :
- 在模式后使用 “+” 表示同时支持输入,输出操作
例如:
如r+, w+, a+
- 在模式后附加 “b”表示以二进制方式打开
例如:
rb,rb+
三.flie方法
1.file.close() #关闭文件。关闭后文件不能再进行读写操作。 2.file.flush() #刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件, 而不是被动的等待输出缓冲区写入。 3.file.isatty() #如果文件连接到一个终端设备返回 True,否则返回 False。 4.file.next() #返回文件下一行。 5.file.read([size]) #从文件读取指定的字节数,如果未给定或为负则读取所有。 6.file.readline([size]) #读取整行,包括 "\n" 字符 7.file.readlines([sizehint]) #读取所有行并返回列表,若给定sizeint>0,则是设置一次读多少字节,这是为了减轻读取压力。 8.file.seek(offset[, whence]) #设置文件当前位置 whence:起点 0:从文件头 1:从当前位置 2:从文件尾部 9.file.tell() #返回文件当前位置。 10.file.write(str) #将字符串写入文件,没有返回值。 11.file.writelines(sequence) #向文件写入一个序列字符串列表,如果需要换行则要自己加入每行的换行符。 12.file.truncate([size]) #截取文件,截取的字节通过size指定,默认为当前文件位置
四.OS方法
#在os模块中 import os 目录: 1.chdir(path) #改变工作目录 2.chroot(path) #改变当前进程的根目录 3.listdir(path) #列出当前目录下的所有文件名 4.mkdir(path[, mode]) #创建指定目录 5.makedirs(path[, mode]) #创建多级目录 6.getcwd() #获取当前工作目录 7.rmdir() #移除目录 8.removedirs() #删除多级目录 文件: mkfifi(path[, mode]) #用于创建指令路径的管道,并设置权限模式。默认的模式为 0666 (八进制)。 remove() #移除文件 unlink(path) #删除文件路径 rename() #重命名 stat() #返回文件状态信息 symlink() #创建连接 utime(path, times) #更新时间戳 tmpfile() #返回一个打开的模式为(w+b)的文件对象 .这文件对象没有文件夹入口,没有文件描述符,将会自动删除。 访问权限: access(path, mode) #检验权限模式 chmod(path, mode) #修改权限 chown(path, uid, gid) #修改属主,属组 path -- 设置权限的文件路径 uid -- 所属用户 ID gid -- 所属用户组 ID umask() #修改默认权限模式