通用-general
python中 if 判断为空的有:
- None
- False
- 零值:0,0.0
- 空的容器:空字符串( “” ),空列表( [ ] ),空元组(( )),空字典( { } )
#逆序遍历数字
for i in range(size - 1, -1, -1):
#python内部函数修改外部函数的值,使用nolocal
#python3新特性
# 字符串切片下标不对时返回‘’
str[-1:0] == ‘’
数组-list
#展开数组,可以用于深拷贝
a[:]
#倒序数组
a[::-1]
#定长数组
[0 for i in range(10)]
[0] * 10
#[0] * 0 = []
#雷区!使用二维数组的时候小心
#二级list共用一个引用
[[0] * n] * n
#正确的写法
dp = [[0] * n for _ in range(n)]
集合-set
#set自动过滤重复元素
s = set([1, 1, 2, 3])
#element是否存在于set
ele in s
字典
# dict中访问不存在的key直接报错?
found = {}
# 方法一:使用get()方法的第二个参数给定默认值
found.get(key, defalut)
# 方法二:collections.defaultdict(factory)
# 下面value默认为int值0
found = collections.defaultdict(int)