리스트에서 무작위로 배열안의 멤버를 추출하는 법을 소개한다.


물론 아래처럼 random모듈을 사용해서 할 수 있다.


import random


alist= [1,3,4,5,3,2,1]

n = random.randint(0, len(alist)-1))

print(alist[n])


위 처럼해도 큰 문제는 없다마는 두번 생각해야하고 좀 아니다 싶은 생각이 든다. 그러던  중 여기저기 찾아다니다 좋은 방법을 찾아냈다.


python3.6.3 (현재로서는 최신버전이다) 에는 secrets이라는 모듈이 새로 생겼다. 훨씬 좋은 난수 발생기라고 한다.


The secrets module is used for generating cryptographically strong random numbers suitable for managing data such as passwords, account authentication, security tokens, and related secrets.


import secrets


alist= [1,3,4,5,3,2,1]

print(secrets.choice(alist))


이렇게 하면 좀 더 깔끔하고 쉬운 코드로 무작위 추출을 할 수 있다.

그럼 이상 초간단 포스팅을 마치겠다.




+ Recent posts