(摘录自https://www.liaoxuefeng.com/)
【list】
list:列表。Python内置数据类型,是一种有序集合,可随时添加删除其中元素,元素类型可以不同,可嵌套。如:classmates = ['A', 'B', 'C']。用len()函数可获得list元素个数。如:len(classmates) = 3。
访问:classmates[0] = 'A',classmates[2] = 'C'。特别的,classmates[-1] = 'C',倒数第一个元素,依次类推。对于一个list,合法的下标范围是:[-len(list), len(list) - 1]。
追加:append()函数。如:classmates.append('D') = ['A', 'B', 'C', 'D']。
插入: insert()函数。如:classmates.insert(1, 'a') = ['A', 'a', 'B', 'C', 'D']。
删除:pop()函数。如:classmates.pop() = 'D'(删除最后一个元素),classmates.pop(1) = 'a'。
替换:赋值给对应索引位置。classmates[1] = 'b'。
【tuple】
tuple:元组。与list类似,但是不可变,一经初始化就只能访问不能修改,更加安全。如:classmates = ('A', 'B', 'C')。
特别的,执行t = (1)后t是整数1,单元素必须在元素后添加逗号才会被视为元组:t = (1, )。
实际上,list和tuple中存放的都是指向对象的地址,tuple不能修改指的是地址不可修改,地址指向的对象可能被修改。
【条件判断】
if <条件判断1>:
<执行1>
elif <条件判断2>:
<执行2>
elif <条件判断3>:
<执行3>
else:
<执行4>
【循环】
第一种:
for <变量> in <范围>:
<执行>
其中,范围是一个含有多个元素、可迭代访问的对象,可以是list,tuple,或者range(x, y)(该函数生成从x到y-1的数列)。第二种:
while <条件判断>:
<执行>
可以用break跳出循环,用continue跳过当前循环尚未执行的语句直接进入下一个循环。
【dict】
dict:字典。相当于java的Map。使用键值对存储,具有极快的查找速度,但需占用大量内存(以空间换时间)。
创建:d = {'A' : 1, 'B' : 2, 'C' : 3}。d = {}。
加入key-value:d[key] = value。
根据key获取value:d[key](返回value,如果key不存在则报错)。
判断key是否存在:'A' in d(值为True)。
get()方法:get(key)返回键key对应的值,如果key不存在则返回空值None。get(key, value)若key不存在则返回value。
pop()方法:pop(key)删除以key为键的键值对。
注意:key必须为不可变对象。Python中字符串、整数都是不可变的,可以作为key。而list是可变的,不能作为key。
【set】
set:集合。无序、无重复元素。
创建:s = {1, 2, 3};s = set([1, 2, 3]);s = set()。(注意!s = {}创建的是一个空的dict,而不是set!)
添加key:s.add(4)。
删除key:s.remove(4)。
交集:s1 & s2。
并集:s1 | s2。
差集:s1 - s2。
注意:key同样必须为不可变对象。对于不可变对象而言,调用对象自身任意方法不会改变对象内容,只可能创建新对象返回。