解决方法
secrets.choice(range(n,m))应该没问题,因为Python 3上的范围是懒惰的.
n secrets.randbelow(m-n)是另一种选择.我不会用它,因为它不太明显是正确的.
由于secrets提供对SystemRandom类的访问,使用与random.Random相同的接口,您还可以保留自己的SystemRandom实例:
my_secure_rng = secrets.SystemRandom()
并做
my_secure_rng.randrange(n,m)