一、列表推导式
1.1.range()函数
1).作用:按步骤生成整数序列的对象
2).特点:可以使用for循环遍历
3).语法:range(起始位置,结束位置,步长)
4).说明:
1.起始位置默认值为0可以省略,结束位置不能省略,步长默认值为正1可以省略
2.生成的数据范围:包含起始位置值,不包含结束位置值,[起始位置,结束位置)左闭右开的区间
1.2.作用
可以根据需求快速生成一个列表
1.3.语法
[表达式for变量inrange(范围值)]
1.4.说明
1).列表推导式中可以添加if条件判断
2).列表推导式中for..in..后面可以是range(范围值)函数,还可以是序列化的容器(列表,元组,字符串)
二、文件
2.1.普通文件
1).文件
1.概念:存储在某种长期储存设备上的一段数据
2.长期储存设备:硬盘、U盘、移动硬盘、光盘...
3.作用:将数据长期的保存下来,在需要的时候使用
4.存储方式:计算机中文件最终以二进制的方式来存储在硬盘上
5.分类:
(1).文本文件:可以使用文本编辑器打开的文件,本质还是二进制的文件,比如:txt文件,py,java,.cpp文件
(2).二进制文件:不能使用文本编辑器打开,但是可以使用特殊的软件打开,比如:图片/视频/音频
2).文件的操作流程
1.打开文件
2.操作文件
(1).读,将文件内容读取到内存
(2).写,将内存中内容写入文件
3.关闭文件
3).操作文件的函数/方法
1.open()函数
(1).作用:打开文件
(2).注意:
1).文件存在,返回文件对象,通过文件对象对文件进行操作
2).文件不存在,会抛出异常
(3).说明:open()函数有多个参数
1).参数1:要打开的文件,如果以读的方式打开的文件不存在,则会报错
2).参数2:打开文件的模式,默认是mode="r”只读的方式
3).参数3:打开文件的编码格式
2.read()方法
(1).作用:将文件内容读取到内存
(2).注意:一次读取文件中所有的内容
(3).说明:读取的数据类型是字符串
3.write()方法
(1).作用:将指定内容写入文件
(2).注意:默认写入字符串,否则会报错
4.close()方法
(1).作用:关闭文件资源
(2).注意:忘记关闭文件资源,造成系统资源浪费
5.说明:read / write / close 三个⽅法都需要通过 ⽂件对象 来调⽤
4).文件指针
1.作用:文件指针标记读取文件数据的位置
2.注意:
(1).第一次打开文件时,文件指针默认是在文件开始位置
(2).当使用read()函数读取所有内容后,文件指针移动到文件末尾
(3).此时再次使用read()函数将读取不到任何内容
5).文件打开方式
1.r:只读方式
(1).文件不存在,报错
(2).文件存在,从开头读
2.w:只写方式
(1).文件不存在,新建文件
(2).文件存在,覆盖原文件
3.a:追加方式
(1).文件不存在,新建文件
(2).文件存在,在文件末尾追加数据
4.注意:频繁移动文件指针,会降低文件读写效率,一般情况多用只读或只写方式打开文件(即r+,W+,a+一般不用)
6).使用withopen打开文件
1.好处:不用自己去书写关闭文件的代码,会自动进行关闭
2.格式:
7).按行读取文件内容
1.readline()方法
(1).按行读取文件内容,一行一行读取
(2).读取完一行内容之后,文件指针会移动到下一行开始位置,便于后续读取操作
(3).一般配合死循环使用--->文件大小不确定
8).eval函数
1.可以将字符串当成有效的表达式进行运算并返回计算结果
2.不要滥用eval函数.使用evalO函数对itput()获取的字符串直接进行转换是很危险的
2.2.文件/目录常用的管理操作
1).文件的操作
1.对文件重命名:os.rename(原文件名,新文件名)
2.删除文件:os.remove(文件名)
2).目录的操作
1.listdir目录列表:os.listdir(目录名)
2.mkdir创建目录:os.mkdir(目录名)
3.rmdir删除目录:os.rmdir(目录名)
4.getcwd获取当前目录:os.getcwd()
5.chdir修改python解释器的工作目录:os.chdir(目标工作目录)
6.path.isdir判断是否是文件夹:os.path.isdir(文件夹路径)
7.path.exists(目录/文件)判断指定的目录或文件是否存在,如果存在返回True,不存在返回False
3).注意
1.对文件和目录进行上述操作,需要先导入os模块,import os
2.对文件和文件夹操作可以是绝对路径也可以是相对路径
2.3.JSON文件
1).概念
json文件是一种基于文本,独立于语言的轻量级数据交换格式
2).特点
1.JSON是纯文本
2.JSON具有良好的自我描述,便于阅读和编写
3.JSON具有清晰的层级结构
4.有效地提升网络传输效率
3).使用场景
常用在测试时,将测试数据定义为JSON文件格式,使用代码读取json文件,即读取测试文件,进行传参(参数化)
4).语法
1.文件的后缀是.json
2.主要数据类型为对象(0类似Python中字典)和数组([],类似Python中的列表),对象和数组可以互相嵌套
3.一个json文件是一个对象或者数组(即json文件的最外层要么是一个0或者是一个[])
4.json中的对象是键值对组成的,每个数据之间使用逗号隔开,但是最后一个数据后边不用写逗号
5.json中的字符串必须使用双引号
6.json中的其他数据类型
(1).数字类型型 ----> int,float
(2).string字符串---> Str
(3).布尔类型 true,false ---->True,False
(4).null --->None
5).JSON文件的书写和读取
1.书写:
2.读取
(1).导包 import json
(2).读打开文件
(3).读文件json.load(文件对象)---返回字典(文件中是对象)或者列表(文件中是数组)
6).JSON文件的写入(很少使用)
1.将python中的数据类型存为json文件,需要使用json提供的方法,不再使用write
2.步骤:
(1).导包import json
(2).写(w)方式打开文件
(3).写入--json.dump(Python中的数据类型,文件对象)