【693】Python刷题笔记
1. 需要熟练 list 对应的函数,参考链接,#26
-
list.append(obj): 在列表末尾添加新的对象
-
list.count(obj): 统计某个元素在列表中出现的次数
-
list.extend(seq): 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
-
list.index(obj): 从列表中找出某个值第一个匹配项的索引位置
-
list.insert(index, obj): 将对象插入列表
-
list.pop([index=-1]): 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
-
list.remove(obj): 移除列表中某个值的第一个匹配项
-
list.reverse(): 反向列表中元素
-
list.sort(cmp=None, key=None, reverse=False): 对原列表进行排序
2. 善于使用 try...except... 语句,参考链接,#26
-
except 需要跟随一个Python标准异常,可以通过上述链接查看,同时也可以根据具体的报错内容来添加
-
对于不知道程序的结束条件可以使用,一直运行到不能运行为止
3. 对于字符串匹配的问题,可以考虑使用 划窗法,就是不停的移动,#28
4. 二分查找,参考链接,#35,#69
5. 动态规划,具体内容,需要一些总结提炼,不太好想,#53,#70
#70:把爬楼梯问题转换为斐波拉契数列问题,主要是动态规划思想的练习!
6. 链表问题,#83
需要注意链表的终止条件,无法像list等那样简单的边界,另外就是考虑不同的情况,此问题需要再巩固!
7. python相关内置函数
| 函数 | 描述 |
| repr(x) | 将对象 x 转换为表达式字符串 就是显示真实显示出来的字符串内容,与 eval() 函数正好相反 |
| eval(str) | 用来计算在字符串中的有效Python表达式,并返回一个对象 将字符串的内容转换为真实的数据内容,与 repr() 函数相反 |
| chr(x) | 将一个整数转换为一个字符 与 ord() 函数相反 |
| ord(x) | 将一个字符转换为它的整数值 与 chr() 函数相反 |
| hex(x) | 将一个整数转换为一个十六进制字符串 |
| oct(x) | 将一个整数转换为一个八进制字符串 |
| bin(x) | 将一个整数转换为一个八进制字符串 |
8. python随机数函数
| 函数 | 描述 |
|---|---|
| choice(seq) | 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。 从已有序列中随机选择一个数字 |
| randrange ([start,] stop [,step]) | 从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1 自己构建range来获取一个随机数字 |
| random() | 随机生成下一个实数,它在[0,1)范围内。 |
| seed([x]) | 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。 |
| shuffle(lst) | 将序列的所有元素随机排序 |
| uniform(x, y) | 随机生成下一个实数,它在[x,y]范围内。 |
9. 双指针问题
分别将指针放置在左右两个位置,然后往中间移动
#11:需要考虑里面的逻辑关系,从而构建相应的代码(需要加强)
#15:需要考虑剔除掉重复数据,这个部分可以减少很多计算量(需要加强)
10. 善用字典,同时了解字典的相关函数
Python 字典(Dictionary) | 菜鸟教程 (runoob.com)
浙公网安备 33010602011771号