Python 小技巧 01
这一页保留一点“零散但好用”的风格,专门收一些不值得单开大章节、但很适合以后快速翻回来的小技巧。
sorted() 默认升序
numbers = [3, 1, 4, 1, 5, 9]
print(sorted(numbers))
print(sorted(numbers, reverse=True))
需要原地排序时用 list.sort()
numbers = [3, 1, 4]
numbers.sort()
sorted() 返回新列表,sort() 原地修改。
判断两个列表是否包含相同元素
如果不关心顺序:
list1 = [3, 2, 1]
list2 = [1, 2, 3]
print(sorted(list1) == sorted(list2))
如果还要关心重复次数:
from collections import Counter
list1 = [1, 2, 2, 3]
list2 = [3, 2, 1, 2]
print(Counter(list1) == Counter(list2))
ord() 和 chr()
print(ord("a")) # 97
print(chr(97)) # a
这在字符编码、题目输入处理、简单映射时都很常见。
key= 是排序的核心
words = ["apple", "kiwi", "banana"]
print(sorted(words, key=len))
一旦要按长度、按字段、按自定义规则排序,先想到 key=。