以下仅仅记录和后面力扣刷题相关的、且平常会遗漏的语法知识。
下面这些笔记都是点到为止,不进行深入解释。大多数学过python的朋友看到就知道什么意思的,我就不解释了
字符串
str = "I am a cook"
# 按照空格切分
str.split(" ")
# 转大小写
str.upper()
str.lower()
# 定位一个字符所在的位置
str.index("m")
# 字符串,转成这个字符串在ASCII码表上的位置 的那个数字
str2 = "c"
ord(str2) #
# 从int数字转成 ASCII表上对应的字符串
n = 100
char(n)
# ASCII表中是大写在前,小写在后
列表
# 定位列表中某个元素的索引
lst = [1, 2, 3, 4, 5]
index = lst.index(3)
# map可以直接将列表中所有元素的数据类型转成前面规定的那个
s = "12 35 58 93"
m = map(int, s.split(" "))
m = list(m)
j = ['12', '35', '58', '93']
k = list(map(int, j))
#使用列表的优势就是自带索引 0 1 2 3 4,相当于一个列表,实际存了两组数据
# 一个列表如何竖着把数字取出来
l = [ [5,4,1],
[6,8,9]]
# 取出来,5,6是一组, 4,8是一组, 1,9是一组
# 外层循环3次,len(l[0]), 不换行
# 内层循环2次,len(l), 换行
l = [ [5,4,1],
[6,8,9]]
def v_print(list1):
for i in range(len(list1[0])): # 3列
for j in range(len(list1)): # 2行
print(list1[j][i], end=" ") # 不换行
print("") # 换行
v_print(l)
# 5 6
# 4 8
# 1 9
字典
# 字典的优势是,可以一个字典存key和value两组数据
# 列表也是一个数据容器存两组数据,只不过索引那个默认是0 1 2 3 4,自己不能设计的。但是字典那个key可以自己随意设计。
# 取出key和value
d = {"a":1, "b":2}
d.keys()
d.values()
# get()取key对应的value
# get的好处是当key值不存在的时候,不会报错,会return出你规定那个东西出来
d = {"a":1, "b":2}
d.get("a") # 1
d.get("c") # 查找不存在的东西,不会报错
# d["c"]# 不存在,就直接报错了
d.get("c",666) # 查找不存在,你写什么就返回什么。程序不会出现报错
# 666
d.get("c","查不到") # 放 int,字符串,字典 都可以,都会返回出来
# 查不到
# 如何让一个字典的排序key按照字母表的顺序来排?
d = {"h":1, "e":1, "l":3,"o":2}
t = list(d.items())
# t = [('h', 1), ('e', 1), ('l', 3), ('o', 2)]
t.sort() # 默认是以列表中每个元素的 第一个元素为标准来排序的,默认是升序排列
# print(t) # [('e', 1), ('h', 1), ('l', 3), ('o', 2)]
t.sort(reverse=True) # 也可以降序
# print(t) # [('o', 2), ('l', 3), ('h', 1), ('e', 1)]
# 也可以以第二列为标准来排序
t.sort(key=lambda x:x[1]) #lambda前面是输入,后面是输出
# print(t) # [('h', 1), ('e', 1), ('o', 2), ('l', 3)]
t.sort(key=lambda x:x[1], reverse=True)
# print(t) # [('l', 3), ('o', 2), ('h', 1), ('e', 1)]
#最后转回字典
dict(t) # {'l': 3, 'o': 2, 'h': 1, 'e': 1}
函数
注意在函数的内部,如果你是
15:56