小知识点:
启动——IDLE(交互式开发环境)
input()——返回string类型
字符串复制——'abcd' * 3 -> 'abcdabcdabcd'
注释——
# 单行注释
'''
多行注释
'''
"""
多行注释
"""
布尔值、操作符——True/False and/or/not 优先级not > and > or
if/while/for使用——
if cond:
...
elif cond:
...
else:
...
while cond:
...
for i in range():
...
range()——range(10) | range(0, 10) | range(0, 10, 1) 同一个意思,i取值0到9,3个参数最后一个表示步长
载入模块——import XXX
随机数——import random
i = random.randint(1, 10)
定义函数——def fun():
使用全局变量——global i
异常try——
try:
...
except AError: #出现AError类型的错误时执行后面语句
...
列表切片、复制、负数下标——
spam = [0, 1, 2, 3, 4]
# 负下标-5 -4 -3 -2 -1
spam[-1] # = spam[4] = 4
spam[1: 4] # [1, 2, 3]
spam[1: -1] # = spam[1: 4] = [1, 2, 3]
spam[1:] # [1, 2, 3, 4]
spam[:2] # [0, 1]
spam[:] # [0, 1, 2, 3, 4]
判断——A in [list] | A not in [list]
列表方法——
list.append(A) # 末尾插入元素A
list.insert(k, A) # A插入list[k]处,之前的list[k]及后面的所有元素后移
list.remove(A) # 删除第一个A,若列表没有元素A报错ValueError
list.sort() # 按ASCII排序
list.sort(reverst = True) # 反向排序
list.sort(key = str.lower) # 字典排序
元组(tuple)——列表的元素不可变形式,只有一个元素(A,)逗号不能省略
返回元组/列表版本——list(spam) tuple(spam)
可变类型、不可变类型——可变类型传递引用,不可变传值本身。可变类型想传值本身可以使用copy模块里的浅拷贝copy.copy()和深拷贝copy.deepcopy()。深拷贝可以拷贝列表中的所有列表。
字典类型——多个(key, value)对
{key1: value1, key2: value2, ...}
key # 不可变对象,字典里唯一,每个不同
# 方法:
v = dic.get(key, val) # 字典dic里有key,返回对应的value给v,否则返回此处自己设定的val
v = dic.setdefault(key, val) # dic里有key,返回对应value,否则增加(key, val)到dic
# keys() values() items()
# 遍历字典的键值对时:
for k, v in dictionary.items():
...
# 注意必须是items()类型,直接使用dictionary报错 “ValueError: too many values to unpack (expected 2)”