计算机的内部存储器称为内存,断电后不能保存数据,而外部存储器可以永久存储数据。
外部存储器有:磁盘(硬磁盘、软磁盘)、光盘、U盘等。
windows对电脑中的外部存储器用字母进行编号,其中A、B留给软磁盘,硬盘从C开始编号。
计算机中的一个硬盘可以被划分成若干个逻辑盘(分区)来使用,更方便管理。
外部存储器以文件为单位存储数据,每个文件有一个名字,名字分为文件名和后缀名(扩展名)两部分。文件名是文件的标识,而扩展名标识文件的类型。
文件的类型非常多样,可以简单地分为文本文件和二进制文件。
文件的扩展名决定了Windows将启动什么软件打开它。
文件的容量单位是字节,每个字节由8个bit构成。每个字节的取值范围是0~255或-128~127。
为了方便管理数量庞大的文件,外部存储器中可以创建文件夹(目录),文件夹中可以存放文件,也可以存放下一级文件夹(子目录),理论上层数不限。
由于多层文件夹的结构是一个树状结构,因此,从磁盘顶部(根目录)到达某个文件的位置就形成了一个路径。路径的表达方法如下:
d:\abc\123\ 以"\"分隔文件夹
路径分为绝对路劲和相对路径,绝对路径是从盘符开始,相对路径是相对于当前路径。
在路径中,.. 代表上一级文件夹,. 代表当前文件夹。
open(file, mode='r')
打开成功返回一个File类对象,File类的方法如下:
file.close()
关闭文件。关闭后文件不能再进行读写操作。
file.read([size])
从文件读取指定的字节数,如果未给定或为负则读取所有。
file.readline([size])
读取整行,包括 "\n" 字符。
file.readlines([sizeint])
读取所有行并返回列表,若给定sizeint>0,返回总和大约为sizeint字节的行, 实际读取值可能比 sizeint 较大, 因为需要填充缓冲区。
file.seek(offset[, whence])
移动文件读取指针到指定位置
file.tell()
返回文件当前位置。
file.write(str)
将字符串写入文件,返回的是写入的字符长度。
file.writelines(sequence)
向文件写入一个序列字符串列表,如果需要换行则要自己加入每行的换行符。
t 文本模式 (默认)。
x 写模式,新建一个文件,如果该文件已存在则会报错。
b 二进制模式。
+ 打开一个文件进行更新(可读可写)。
U 通用换行模式(Python 3 不支持)。
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。
r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。
w 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
w+ 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
1、输入10个学生成绩,存入文本文件中。
2、输入身份证号码,输出籍贯所在地。
咨询电话:0731-88711630 微信号:hn887700 谢老师 QQ:359689361
长沙网学教育科技有限公司 网站备案号:湘ICP备15000537号