투표봇에서 투표할 대상(후보자)들을 특정 조건을 걸어 뽑아도 되지만,
난 랜덤으로 뽑을 것이다.
다양한 랜덤추출 방법이 있다.
random.choice
,random.sample
,random.choices
랜덤으로 뽑되 중복이 있어서는 안된다.
중복없이 뽑는 방법은 아래와 같다.
random.sample(리스트, 뽑을 갯수)
import random
l = [0, 1, 2, 3]
print(random.sample(l, 3))
sample
함수를 사용하면 중복없이 원하는 갯수만큼 랜덤으로 추출이 가능하다.
@bot.command()
async def rand_list(ctx):
ids = [member.id for member in ctx.guild.members if member.bot == False] # 봇이 아닌 유저리스트
await ctx.send(ids)
rand_id = random.sample(ids, 1)
await ctx.send(rand_id)