文件和数据的处理
概念
文件是数据的抽象和集合
文本文件
-
由单一的特定编码组成的文件,如UTF-8
-
由于存在编码,可以被看成是存储着的长字符串
-
如py,txt
二进制文件
- 直接由比特0和1组成,没有统一字符编码
- 一般存在二进制0和1的组织结构,即文件格式
- 适用于例如:png文件,avi文件等
文件的打开模式
‘r’ 只读模式,默认值。如果不存在则返回FileNotFoundError
‘w’ 覆盖写模式,文件不存在则创建,存在则完全覆盖
‘x’ 创建写模式,文件不存在则创建,存在则返回FileExistsError
‘a’ 追加写模式,文件不存在则创建,存在则在文件最后追加内容
‘b’ 二进制文件模式
扫描二维码关注公众号,回复: 9142370 查看本文章
‘t’ 文本文件模式,默认值
‘+’ 与r/w/x/a一同使用,在原功能基础上增加同时读写功能
操作函数和方法
x=open(<文件名>,<打开模式>) #文件打开
文件名:绝对路径 注意“ \\ ”或者 “/” 相对路径
<变量名>.close() 程序正常退出自动关闭
<f>.read(size=-1) 读入全部内容,如果给出参数,读出前size长度内容
<f>.readline(size=-1) 读入一行内容,如果给出参数,读入该行前size长度
<f>.readlines(hint=-1) 读入文件所有行,以每行为元素形成列表,如果给出参数,读入前hint行
<f>.write(s) 向文件中写入一个字符串或字节流
<f>.writelines(lines) 将一个元素全为字符串的列表写入文件(并非按名字分行写入,列表内容拼合后写入)
<f>.seek(offset) 改变当前文件操作指针的位置。offset含义: 0-文件开头 1-当前位置 2-文件结尾
数据的处理
- 一维数据
- 二维数据
- 多维数据
- 高维数据 仅利用最基本的二维关系展示数据间的复杂结构
数据的操作周期
存储 表示 操作
一维数据的表示
- 集合类型可以表达一维无序数据
- for循环可以遍历数据,进而对每个数据进行处理
一维数据的存储
-
存储方式一:使用一个或多个空格进行分割,不换行
-
缺点:数据中不能存在空格
-
存储方式二:使用逗号分隔,不换行
-
缺点:数据中不能存在逗号
-
存储方式三:可以使用其他特殊符号或者是符号的组合
一维数据的处理
读入处理
写入处理
二维数据的表示
-
使用二维列表类型表示,每个列表元素都是一个列表
-
(还由很多高级的方法)
-
使用两层for循环遍历每个元素
-
外层列表中每个元素可以对应一行,也可以对应一列