第一部分 基础知识
变量和简单数据类型
-
字符串(string),不分双引号与单引号,引号括起来的都是字符串
-
方法/函数
string.title() #以首字符大写的方式显示字符串string每个单词 string.upper() #字符串string全大写 string.lower() #字符串string全小写 string.rstrip() #删除字符串string末尾空白; string.lstrip() #删除字符串string开头空白; string.strip() #删除字符串string两端空白 str(x) #将非字符串x表示为字符串
列表
-
列表由一系列按特定顺序排列的元素组成,用[]表示列表(list)
-
方法/函数
list.append(x) #在列表list后添加元素x list.insert(i,x) #在列表list的第i个位置上插入元素x del list[i] #删除列表list中第i个位置的元素,以后不会再访问了 list.pop() #删除列表list末尾元素 list.pop(i) #删除列表list第i个位置的元素,该方法返回被删除的元素 list.remove(x) #删除列表list中第一个值为x的元素 list.sort() #对列表list中元素永久排序(默认reverse=False,从小到大);若从大到小,在括号内添加reverse=True sorted(list) #对列表list中的元素暂时排序,参数情况同方法sort() list.reverse() #使列表list中的元素永久逆序 len(list) #获取列表list的长度
操作列表
-
生成列表
range(a, n, b) #产生从a到b步长为n的数字集(不含b) list(range(1,6) #生成列表[1, 2, 3, 4, 5] min(list)、max(list)、sum(list) #找出数字列表的最大值、最小值、总和
-
python中(**)表示乘方运算
-
列表解析生成列表
squares = [value**2 for value in range(1,11)] print(squares) #生成了列表[1,4,9,16,25,36,49,64,81,100]
-
元组——不可变的列表(用圆括号来表示)
dimensions = (200, 50) #其元素不可变 dimensions[0] = 250 #错误语句,不可行 dimensions = (250,10) #可行,可以给存储元组的变量赋值,即重新定义
if 语句
- and or
- in not in
- True False
- if elif else
字典
- 字典是一系列键-值对。每个键都与一个值相关联,键和值之间用冒号分隔,键-值对之间用逗号分隔。字典由{}包括
- 添加键-值对操作:依次指定字典名、用方括号括起的键和相关联的值
- 删除键-值对操作:用del语句,必须指定字典名和要删除的键
- 遍历所有的键-值对:方法items(),返回一个键-值对列表
- 遍历字典中所有键:方法keys(),返回的是一个键列表
- 遍历字典中的所有值:方法values(),返回的是一个值列表
- 对包含重复元素的列表调用set(),可剔除重复元素
用户输入和while循环
- input()——返回用户的输入解读为字符串,括号内可添加参数(一般为字符串):向用户显示的提示或说明
- 用int()将input()返回的字符形式的数字转换成整型
函数
- 定义函数用关键字def。
- 在函数中,用三个双引号括起文档字符串,用于描述函数的信息。
- 函数传递列表,操作是永久性的,若不想让函数修改列表中的值,看在形参中的列表名后加入 [:] 以传递列表副本。
- 传递任意数量的实参(放至形参最后),在函数定义中的形参中用*list_name表示一个空元组,用**dictionary_name表示一个空字典。
- 将函数存储在模块中,导入时用import关键字,后加as可以命名别名
- 编写指南:给函数指定描述性名称时,只使用小写字母和下划线;加上文档字符串;形参和实参中指定默认值时,等号两边不要空格。
类
- 定义类用关键字class,python中用首字母大写的名称表示类名
- 类的定义中,每个类中的函数——称为方法,其中的self参数,用于指向实例本身的引用,让实例可以访问类中的属性和方法。
- 以self为前缀的变量可供类中的所有方法使用,可通过实例访问的变量称为属性。
- 通过实参向类传递参数时,不需要提供self参数——定义时的首要参数,调用时可忽略的参数
- 类编码风格:类名用驼峰命名法,类中可用一个空行分隔方法,模块中,可用两个空行分隔类
文件和异常
- 使用with open() 可让python程序自行关闭文件
- 方法read()读取文件中的全部内容,会多返回一个空行,可用方法rstrip()删除末尾的空白行
- 方法readlines()按文件的每一行读取内容,最后不会多返回空字符串
- 方法strip()可删除末尾的空格
- open()中第二个参数:'r’读取模式;'w’写入模式;'a’附加模式;'r+'读写模式。默认只读
- try-except可控制异常程序信息的输出
测试代码
- 使用模块unittest
- 定义包含Test字样的继承了unittest.TestCase类的继承类
- 类中定义以test_打头的测试方法
- unittest.TestCase类中的断言方法
方法 | 用途 |
---|---|
assertEqual(a,b) | 核实a == b |
assertNotEqual(a,b) | 核实 a != b |
assertTrue(x) | 核实x为True |
assertFalse(x) | 核实x为False |
assertIn(item, list) | 核实item在list中 |
assertNotIn(item, list) | 核实item不在list中 |
- 运行测试用例时,每完成一个单元测试,Python都打印一个字:测试通过打印一个句点;测试引发错误打印一个E;测试导致断言失败时打印一个F.