1. 具名元组(namedtuple)和deque
具名元组说白了就是一个带有名字的元组,下面创建一个具名元组:
from collections import namedtuple
# 创建一个名为fruits的具名元组
Student = namedtuple('Student', ['name', 'age', 'sex', 'major'])
# namedtuple中的'Student'为我要创建元组的名称,并不一定要和等式左边的相同,等式左边的Student相当于一个类,用这个类来创建名为'Student'的元组(实例)。
# namedtuple中的[]为元组的元素的名称,相当于字典中的键,在创建实例时,需要输入对应的真实值。
# 创建一个实例
student_1 = Student('zhangsan', '20', 'male', 'math')
print(student_1)
print(student_1.major)
# 输出
Student(name='zhangsan', age='20', sex='male', major='math')
'math'
deque是一个双端队列,可以从队列的两端添加数据,语法如下:
deque([iterable[, maxlen]]) --> deque object # iterable-元素(列表),maxlen-队列的最大长度
下面来看个例子:
from collections import deque
data = deque([], maxlen=10) # 创建一个长度为10的空的队列
# 向空队列中添加数据,默认从右边加入
data.append('apple')
print(data)
# 输出
deque(['apple'], maxlen=10)
# 在添加一个元素
data.append('banana')
print(data)
# 输出
deque(['apple', 'banana'], maxlen=10)
# 从左边添加元素
data.appendleft('pear')
print(data)
# 输出
deque(['pear', 'apple', 'banana'], maxlen=10)
2. random.sample()用法
sample(population, k),Chooses k unique random elements from a population sequence or set, 从已知的列表中随机返回k个元素的新列表
import random
list_1 = ['a', 'b', 'c', 'd', 'e']
list_2 = random.sample(list_1, k=3)
# 输出
['b', 'd', 'e']