力扣刷题班第1节:Python语法常遗漏的知识

以下仅仅记录和后面力扣刷题相关的、且平常会遗漏的语法知识。

下面这些笔记都是点到为止,不进行深入解释。大多数学过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}

猜你喜欢

转载自blog.csdn.net/Albert233333/article/details/132802172