您的位置:

Python random 函数介绍

Python的random模块提供了丰富的随机数生成函数。这些函数可以用于密码学、模拟和游戏等方面。本文将介绍Python的random模块的常用函数和用法,同时提供代码示例。

一、random()函数

random()函数返回一个0到1之间的随机浮点数:

import random
print(random.random())

输出结果:

0.9707847535471569

我们可以生成一个指定范围内的随机整数:

print(random.randint(1, 10))

输出结果:

8

我们还可以生成一个随机的字符或字符串:

print(chr(random.randint(97,122)))
print(''.join(random.sample('abcdefghijklmnopqrstuvwxyz1234567890',8)))

输出结果:

q
fd39bsmA

二、seed()函数

seed()函数用于初始化随机生成器:

random.seed(10)
print(random.random())

输出结果:

0.5714025946899135

我们也可以使用当前时间作为seed:

import time
random.seed(time.time())
print(random.random())

输出结果:

0.31087385919352544

三、shuffle()函数

shuffle()函数可以打乱一个序列:

lst = [1, 2, 3, 4, 5]
random.shuffle(lst)
print(lst)

输出结果:

[2, 4, 1, 5, 3]

四、sample()函数

sample()函数可以从一个序列中随机选择一些元素:

lst = [1, 2, 3, 4, 5]
print(random.sample(lst, 3))

输出结果:

[4, 2, 3]

五、uniform()函数

uniform()函数返回在指定范围内的随机浮点数:

print(random.uniform(1.0, 2.0))

输出结果:

1.9510951636554168

六、常见用法

random模块还有很多其它常用的用法,比如生成随机颜色、生成随机密码等:

print('#{:02X}{:02X}{:02X}'.format(*[random.randint(0, 255) for _ in range(3)]))
print(''.join(random.sample('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890',10)))

输出结果:

#D175BE
qYv3tunBND

七、小结

本文介绍了Python random模块的常用函数和用法,主要包括random()函数、seed()函数、shuffle()函数、sample()函数、uniform()函数和常见用法。使用random模块可以方便地生成随机数和序列,为密码学、模拟和游戏等方面提供了丰富的支持。