python中random.randint和random.randrange的区别详解

在python中,通过导入random库,就能使用randint 和 randrange
这两个方法来产生随机整数。那这两个方法的区别在于什么地方呢?让我们一起来看看!

区别:

randint 产生的随机数区间是包含左右极限的,也就是说左右都是闭区间的[1, n],能取到1和n。而 randrange 产生的随机数区间只包含左极限,也就是左闭右开的[1, n),1能取到,而n取不到。randint 产生的随机数是在指定的某个区间内的一个值,而 randrange 产生的随机数可以设定一个步长,也就是一个间隔。

区别1——例子:

randint 示例:

import random
while True:
 rdt = random.randint(1, 3)
 print(rdt, end="")
 if rdt == 3:
  break

输出结果:产生随机数3即停止。

C:\Users\ASUS\AppData\Local\Programs\Python\Python37\python.exe F:/python/test.py
1121213
Process finished with exit code 0

randrange 示例:

import random
while True:
 rdt = random.randrange(1, 3)
 print(rdt, end="")
 if rdt == 3:
  break

输出结果:永远无法取到有边界,无线循环下去。

区别2——例子:

randint 示例:

import random
for i in range(1, 10):
 print(random.randint(1, 100, 10), end=" ")

输出结果:randint 无法设定步长,报如下错误!

randrange 示例:

import random
for i in range(1, 10):
 print(random.randrange(1, 100, 10), end=" ")

输出结果:设定步长为10,产生的随机数间隔都是10的整数倍。

C:\Users\ASUS\AppData\Local\Programs\Python\Python37\python.exe F:/python/test.py
31 31 71 21 21 31 41 71 31
Process finished with exit code 0

到此这篇关于python中random.randint和random.randrange的区别详解的文章就介绍到这了,更多相关python random.randint random.randrange内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2020-09-18

Python中的random.uniform()函数教程与实例解析

random.uniform( ) 函数教程与实例解析 1. uniform( ) 函数说明 random.uniform(x, y)方法将随机生成一个实数,它在 [x,y] 范围内. 2. uniform( ) 的语法与参数 2.1 语法 # _*_ coding: utf-8 _*_ import random random.uniform(x, y) 或 # _*_ coding: utf-8 _*_ from random import uniform uniform(x, y) 提示:

基于Python中random.sample()的替代方案

python中random.sample()方法可以随机地从指定列表中提取出N个不同的元素,但在实践中发现,当N的值比较大的时候,该方法执行速度很慢,如: numpy random模块中的choice方法可以有效提升随机提取的效率: 需要注意的是,需要置replace为False,即抽取的元素不能重复,默认为True. 补充知识:Python: random模块的随即取样函数:choice(),choices(),sample() choice(seq): 从seq序列中(可以是列表,元组,字符

详解Python中打乱列表顺序random.shuffle()的使用方法

之前自己一直使用random中 randint生成随机数以及使用for将列表中的数据遍历一次. 现在有个需求需要将列表的次序打乱,或者也可以这样理解: [需求]将一个容器中的数据每次随机逐个遍历一遍. random.shuffle()方法提供了完美的解决方案. 不会生成新的列表,只是将原列表的次序打乱 # shuffle()使用样例 import random x = [i for i in range(10)] print(x) random.shuffle(x) print(x) 源码及注释

Python使用random.shuffle()打乱列表顺序的方法

Python的random.shuffle()函数可以用来乱序序列,它是在序列的本身打乱,而不是新生成一个序列. 示例: from random import shuffle x = [[i] for i in range(10)] shuffle(x) shuffle()返回的是None,列表x的顺序被打乱. 以上这篇Python使用random.shuffle()打乱列表顺序的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

对Python random模块打乱数组顺序的实例讲解

在我们使用一些数据的过程中,我们想要打乱数组内数据的顺序但不改变数据本身,可以通过改变索引值来实现,也就是将索引值重新随机排列,然后生成新的数组.功能主要由python中random模块的sample()函数实现. sample(population, k) method of random.Random instance Chooses k unique random elements from a population sequence or set. 下面的代码实现的是打乱iris数据,i

在Python中实现shuffle给列表洗牌

如下所示: # Copyright (c)2018, 东北大学软件学院学生 # All rightsreserved # 文件名称:a.py # 作 者:孔云 #问题描述:shuffle函数可以给列表洗牌 import random dessert=['ice cream','pancake','brownies','cookies','candy'] random.shuffle(dessert) print(dessert) 运行结果如下: 注:列表打印出来是洗牌后的结果,顺序完全不一样.如

在Keras中利用np.random.shuffle()打乱数据集实例

我就废话不多说了,大家还是直接看代码吧~ from numpy as np index=np.arange(2000) np.random.shuffle(index) print(index[0:20]) X_train=X_train[index,:,:,:]#X_train是训练集,y_train是训练标签 y_train=y_train[index] 补充知识:Keras中shuffle和validation_split的顺序 模型的fit函数有两个参数,shuffle用于将数据打乱,v

JAVA随机打乱数组顺序的方法

本文实例讲述了JAVA随机打乱数组顺序的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: import java.util.Random;        public class RandomSort {        private Random random = new Random();        //数组大小        private static final int SIZE = 10;        //要重排序的数组        private int

Python查找两个有序列表中位数的方法【基于归并算法】

本文实例讲述了Python查找两个有序列表中位数的方法.分享给大家供大家参考,具体如下: 今天做到的一个机试题目,很简单,这里简单记录一下: 我用的是归并的思想,当然还可以用递归的方法,下面是具体实现: #!usr/bin/env python #encoding:utf-8 ''''' __Author__:沂水寒城 功能:找到两个有序列表的中位数 若列表总长度为奇数则直接返回中间下标的值 否则返回前一个值,如长度为6则返回下标为2处的值 ''' import random def rando

Python使用zip合并相邻列表项的方法示例

本文实例讲述了Python使用zip合并相邻列表项的方法.分享给大家供大家参考,具体如下: 1>使用zip()函数和iter()函数,来合并相邻的列表项 >>> x [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> zip(*[iter(x)]*2) [(1, 2), (3, 4), (5, 6), (7, 8)] >>> zip(*[iter(x)]*3) [(1, 2, 3), (4, 5, 6), (7, 8, 9)] >

numpy.random.shuffle打乱顺序函数的实现

numpy.random.shuffle 在做将caffe模型和预训练的参数转化为tensorflow的模型和预训练的参数,以便微调,遇到如下函数: def gen_data(source): while True: indices = range(len(source.images)) # indices = the number of images in the source data set random.shuffle(indices) for i in indices: image =

详解Python利用random生成一个列表内的随机数

首先,需要导入random模块: import random 随机取1-33之间的1个随机数,可能重复: random.choice(range(1,34)) print得到一系列随机数,执行一次得到一个随机数: print(random.choice(range(1,34))) 随机取1-33之间的6个随机数,可能重复: random.choices(range(1,34),k=6,weights=range(1,34)) 其权重值表示该数或该范围内的数输出概率大,输出结果为列表 随机取1-3