- []为list,{}为字典,()为tuple
- /得float,//得int(向下取整),int()(往绝对值小的方向取整)
- if,elif,else都不用()
- for循环用range(start, end),比如range(1,5)为i=1,2,3,4,左闭右开。
- 列表list:
创建空列表—— a = []或者a = list()
创建固定长度的列表——— a=list(range(10))
增加元素—— a.append(b)
删除元素并返回,可以输入Index指定删除元素,默认为最后一个元素即-1——a.pop(1)
创建全0列表——a = [0 for i in range(10)]
set转list——a = list(b)
排序:a.sort()
转字符串:str = “”.join(xxx)
创建二维list: a = [[] for i in range(3)]
用index取倒数的元素:a[-1]指倒数第一的元素
在列表末尾一次性追加另一个序列中的多个值: list1.extend(list2)
翻转list:list = reversed(list)
不知道python有没有栈,但是List的pop和append就能和栈的功能一样 - python的三目运算符不是a>b?a:b而是a if a>b else b
- result = [[0] * n] * n生成的二维数组有问题,怎么赋值得到的行都是一样的。
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/1af4c16b6f97614a5e267226dba85743.png)
- i–的for循环可以通过设置step=-1来完成,如下:
for j in range(n - 1, starty, -1):
result[count] = matrix[m - offset][j]
count += 1
- min(x,y,z……)可以取最小值
- a[-1]表示数组中最后一位
- math.ceil(x) 方法将 x 向上舍入到最接近的整数
- 没有指针,只有对象
- 在形参赋值a: int = 2,则在使用时a可以不定义,默认为2,但是不可以为None,但是如果用a: Optinal[int] = 2,则默认可以为None
- 没有null,只有None,None可以用not表示,非None可以直接if xxx判断
- 字典:
删除:del xxx或者del xxx[key]
增加:xxx[key] = value
遍历:for key in dict
检查字典存不存在某个key: if key in xxx - 字符串:
转list: a = list(strs)
字符计数:c = a.count(" ") - 对于set来说,&是交集,|是并集
- 集合set:
list转set: a = set(b)
添加元素:a.add()
创建:a = set() - NameError: name ‘List’ is not defined
from typing import List - class里使用自己的函数和组成部分都要添加self,而且每个函数都要有形参self
- list和dict是mutable,函数里传的是指针
- for循环里的变量是全局变量
- 双向队列deque:
左出队列:popleft()
右增加元素:append()
可以用下标随机访问元素 - float的最小值:
cur_max = -float("INF")