第一部分 基础知识
变量和简单数据类型
字符串(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.
第二部分 项目
项目1 外星人入侵
武装飞船