首页 > 其他分享 >random

random

时间:2024-03-03 22:56:09浏览次数:18  
标签:输出 randrange random lst 随机 print

random随机模块

Python的random模块提供了一系列的随机数生成函数。

import random

random:

获取0-1之间的随机小数(左闭右开)

print(random.random())  # 输出:一个0-1之间的随机小数

randrange:

随机获取指定范围内的整数(包含开始值,不包含结束值,间隔值)

print(random.randrange(3))  # 输出:0、1或2
print(random.randrange(3, 6))  # 输出:3、4或5
print(random.randrange(1, 9, 4))  # 输出:1或5
print(random.randrange(7, 3, -1))  # 输出:7、6、5或4

randint:

随机产生指定范围内的随机整数

print(random.randint(1, 3))  # 输出:1、2或3

uniform:

获取指定范围内的随机小数(左闭右开)

print(random.uniform(0, 2))  # 输出:一个0-2之间的随机小数
print(random.uniform(2, 0))  # 输出:一个0-2之间的随机小数
"""
源码解析
a = 2 , b = 0
return 2 + (0-2) * (0<=x<1)
x = 0 return 2 取到
x = 1 return 0 取不到
0 < x <= 2
return a + (b-a) * self.random()
"""

choice:

随机获取序列中的值(多选一)

lst = ["孙凯喜", "王永飞", "于朝志", "须臾间", "含税小"]
print(random.choice(lst))  # 输出:列表中的一个随机元素


#源码解析
def mychoice(lst):
    index_num = random.randrange(len(lst))
    return lst[index_num]
print(mychoice(lst))

# 使用lambda表达式改造choice函数
mychoice = lambda lst : lst[random.randrange(len(lst))]
print(mychoice(lst))

sample

随机获取序列中的值[返回列表]

tup = ("孙凯喜", "王永飞", "于朝志", "须臾间", "含税小")
print(random.sample(tup, 3))  # 输出:元组中的三个随机元素组成的列表

shuffle:

随机打乱序列中的值(需要可以修改的)

lst = ["孙凯喜", "王永飞", "于朝志", "须臾间", "含税小"]
random.shuffle(lst)
print(lst)  # 输出:随机打乱的列表

生成四位随机验证码(包含大写字母、小写字母和数字)

def yanzhengma():
    strvar = ""
    for i in range(4):
        b_c = chr(random.randrange(65, 91))  # 大写字母
        s_c = chr(random.randrange(97, 123))  # 小写字母
        num = str(random.randrange(10))  # 数字
        lst = [b_c, s_c, num]
        strvar += random.choice(lst)
    return strvar
print(yanzhengma())  # 输出:四位随机验证码

标签:输出,randrange,random,lst,随机,print
From: https://www.cnblogs.com/wbcde116/p/18050921

相关文章

  • Qt 随机数生成器:QRandomGenerator
    一、描述QRandomGenerator可用于从高质量随机数生成器生成随机值。与C++随机引擎一样,QRandomGenerator可以通过构造函数使用用户提供的值作为种子。播种时,此类生成的数字序列是确定性的。也就是说,给定相同的种子数据,QRandomGenerator会生成相同的数字序列。给定不同的种......
  • Qt 生成随机数 qrand、QRandomGenerator
    //老方法//利用qrand和qsrand生成随机数//位于QtGlobal中//例,生成一个0和10之间的随机数1qsrand(QTime::currentTime().msec());//设置种子,该种子作为qrand生成随机数的起始值,RAND_MAX为32767,即随机数在种子值到32767之间2qrand()%10;//新方法//利用QRandomGenerator类......
  • pytest简易教程(30):pytest常用插件 - 随机执行(pytest-random-order)
     pytest简易教程汇总,详见:https://www.cnblogs.com/uncleyong/p/17982846应用场景用来验证用例在随机(无序)执行时是否正常 插件安装pipinstallpytest-random-order 使用方式加参数:--random-order 示例#!/usr/bin/envpython#-*-coding:utf-8-*-#@Author......
  • [ARC104E] Random LIS
    题意:数列每个数是在\([1,a_i]\)上均匀随机分布的整数,求其最长上升子序列长度的期望,\(n\le6\)。发现\(n\)很小,考虑\(O(n^n)\)枚举所有数的偏序关系,然后设\(h_i=\min_{rk_j=i}a_j\),\(m=\max_{i=1}^nrk_i\),这样问题就能转化为数列每个数是\([1_i,h_i]\)上均匀随机分布......
  • JavaSE---Random
    java.util.Random概述Aninstanceofthisclassisusedtogenerateastreamofpseudorandomnumbers. Random实例用来生成伪随机数;Theclassusesa48-bitseed,whichismodifiedusingalinearcongruentialformula. (SeeDonaldKnuth,TheArtofComputerPr......
  • Random
    maven<!--https://mvnrepository.com/artifact/org.apache.commons/commons-lang3--><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.9</version>......
  • TopCoder SRM478C RandomApple 题解
    题意:有\(k\)种苹果和\(n\)个箱子,每个箱子中有一些苹果,先等概率选取\(n\)个箱子组成集合的非空子集,再从选出的苹果中随机选一个,问每种苹果被选中的概率是多少箱子\(i\)有\(a_{i,j}\)个第\(j\)种苹果,第\(i\)个箱子的总苹果数\(siz_i=\sum\limits_{j=1}^ka_{i,j}\),苹果总数\(sum=\su......
  • 【JDK】Random 的局限以及ThreadLocalRandom 类原理剖析
    1 前言我们平时使用随机数大家可能会用到 Random,但是它的问题大家知道吗?以及该如何解决呢?这节我们就来看看。2  Random类及其局限性在JDK7之前包括现在,java.util.Random都是使用比较广泛的随机数生成工具类,而且java.lang.Math中的随机数生成也使用的是java.util.......
  • net8 随机数类Random GetItems() 、Shuffle()方法
    1、在8中对随机数类Random提供了GetItems()方法,可以根据指定的数量在提供的一个集合中随机抽取数据项生成一个新的集合:ReadOnlySpan<string>colors=new[]{"Red","Green","Blue","Black"};string[]t1=Random.Shared.GetItems(colors,10);Console.WriteLine(......
  • python之常用标准库-random
    1.randomdefrandom(self):"""Getthenextrandomnumberintherange[0.0,1.0)."""return(int.from_bytes(_urandom(7),'big')>>3)*RECIP_BPF翻译:获取0,1之间的随机浮点数1#!/usr/bin/python2importrandom3p......