【发布时间】:2023-01-24 06:42:00
【问题描述】:
我正在尝试从一组唯一用户中随机获取 n 个用户。
这是我到目前为止所拥有的
users = set()
random_users = random.sample((users), num_of_user)
这很好用,但它给了我一个弃用的警告。我应该改用什么? random.choice 不适用于集合
更新
我试图获得对帖子的反应并希望它们是独一无二的,这就是我使用 set 的原因。为此坚持使用列表会更好吗?
users = set()
for reaction in msg.reactions:
async for user in reaction.users():
users.add(user)
【问题讨论】:
-
怎么样,random.choice(list(users), num_of_user)?
-
你得到什么弃用警告?通常弃用警告会给你一个替代方案
-
你得到什么信息?作为解决方法,您可以将您的集合转换为列表并将该列表传递给
.sample()。 -
从 Python 3.9 开始弃用的集合中抽样,并将在后续版本中删除。 @阿尔伯特
-
你能把你的集合变成一个列表吗?
random_users = random.choices([*users],k=num_of_user)
标签: python python-3.x random set tuples