python random randint_python函数深入浅出 17.random.randint()函数详解

1.函数名及其来源

random() 函数命名来源于英文单词random(随机)。

randint是random + integer拼接简写而成,代表随机一个整数

Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等。

random.randint() 函数的例子:

>>> import random

>>> import random

>>> print(random.randint(10,20))

19

>>> print(random.randint(10,20))

20

>>> print(random.randint(10,20))

11

>>> print(random.randint(10,20))

19

2.函数定义源码及其用法拆解

random.randint(a,b)

用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n:a<=n<=b

a必须小于或等于b,否则报错。

其他random的方法:

random.random() 方法用于生成一个0到1的随机浮点数:0<=n<1.0

>>> import random

>>> print(random.random())

0.809221478124

random.uniform(a,b):用于生成一个指定范围内的随机浮点数,两参数中,其中一个是上限,一个是下限。如果a>b,则生成的随机数n,即b<=n<=a;如果a>b,则a<=n<=b。

>>> import random

>>> print(random.uniform(10,20))

13.2960134544

>>> print(random.uniform(20,10))

15.9038751838

random.randrange(a,b[,step]):从指定范围内,按指定基数递增的集合中获取一个随机数。如:random.randrange(10,100,2),结果相当于从[10,12,14,16,...,96,98]序列中获取一个随机数。random.randrange(10,100,2)在结果上与random.choice(range(10,100,2))等效。

>>> import random

>>> print(random.randrange(10,100,2))

72

>>> print(random.choice(range(10,100,2)))

28

>>> print(random.choice(range(10,100,2)))

74

random.choice(sequence):参数sequence表示一个有序类型。sequence在python不是一种特定的类型,而是泛指一系列的类型。list,set, tuple,字符串都属于sequence。

>>> import random

>>> print(random.choice("学习python"))

t

>>> print(random.choice(["JGood","is","a","handsome","body"]))

is

>>> print(random.choice(("Tuple","list","Dict")))

list

random.shuffle(x[, random]):用于将一个列表中的元素打乱。

>>> import random

>>> p=["pyhton","is","powerful","simple","and so on..."]

>>> random.shuffle(p)

>>> p

['and so on...', 'simple', 'powerful', 'pyhton', 'is']

random.sample(sequence,k):从指定序列中随机获取指定长度的片段,sample函数不会修改原有序列。

>>> import random

>>> list=[1,2,3,4,5,6,7,8,9,10]

>>> a=random.sample(list,5) #从list中随机获取5个元素,作为一个片段返回

>>> print(a)

[1, 6, 10, 8, 3]

>>> print(list) #原有序列并没有改变

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

3.版本差异

4.学习建议

随机数是用于生成测试入参的好办法,也常见于各种需要随机的场合。

但是每次随机带来的不确定性也会造成某些验证功能的困难,因此可以使用random.seed()通过指定随机的种子值保证每次生成随机数是同一序列的伪随机数。观察下面的输出:

import random

random.seed(0) # 种子值可以任意整数

print("Random number with seed 10 : ", random.random())

#生成同一个随机数

random.seed(0)

print("Random number with seed 10 : ", random.random())

print("Random number with seed 10 : ", random.random())

print("Random number with seed 10 : ", random.random())

#生成同一个随机数

random.seed(0)

print("Random number with seed 10 : ", random.random())

print("Random number with seed 10 : ", random.random())

print("Random number with seed 10 : ", random.random())

### 回答1: random.randint() 是 Python 标准库中的一个函数,用于生成指定范围内的随机整数。它接受两个参数,第一个参数是范围内的最小整数,第二个参数是范围内的最大整数,包括这两个整数在内。例如,如果你调用 random.randint(1, 10) ,它会生成一个1到10之间的整数(包括1和10)。 ### 回答2: random.randint()是Pythonrandom模块提供的一个函数,用于生成一个指定范围内的随机整数。该函数接受两个参数,第一个参数是范围内的最小值,第二个参数是范围内的最大值。 函数的调用形式为random.randint(a, b),其中a和b分别表示范围的最小值和最大值。函数返回一个整数,该整数的取值范围是从a到b(包括a和b)之间的所有整数。如果a大于b,则函数会报错。 例如,调用random.randint(1, 10)会返回1到10之间的一个随机整数,包括1和10。 random.randint()在编程中常用于需要随机生成整数的场景,如游戏中的随机数生成、模拟实验、密码生成等。根据需要,我们可以根据需要设置范围,从而生成不同范围的随机整数。 总之,random.randint()函数Python中用于生成指定范围内随机整数的一个工具函数。 ### 回答3: random.randint()是Python中的一个方法,用于产生指定范围内的随机整数。这个方法需要接收两个参数,分别是指定范围的下界和上界。下界和上界可以是任意整数,下界可以小于上界。方法会返回一个包含在指定范围内的一个随机整数。 例如,调用random.randint(1, 10)这个方法会生成一个1到10之间(包括1和10)的随机整数。调用random.randint(10, 20)则会生成一个10到20之间的随机整数(包括10和20)。 这个方法在编写需要使用随机数的程序时非常有用。比如,如果我们需要生成一个随机的抽奖号码或者从一个给定的列表中随机选择一个元素,就可以通过random.randint()来实现。 需要注意的是,random.randint()是一个伪随机数生成器,它的随机性基于一个种子(seed)。如果不给定种子,每次调用程序时都会使用系统时间作为种子,以保证每次生成的随机数序列不同。如果需要得到固定的随机数序列,可以给定相同的种子,这样每次程序运行时都会生成相同的随机数序列。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值