跳到主要内容

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=

关联阅读