当前位置: 首页 > news >正文

Python程序设计 内置模块 随机函数

随机函数

random

random是用于生成随机数的,我们可以利用它随机生成数字或者选择字符串。

random的用法主要包括random()、uniform()、randrang()、choice()、shuffle()、sample()几种用法。

.random()

用于生成一个随机浮点数:range[0.0,1.0)

import random
random.random()   # 输出 0.5487876445645461

.randint(a,b)

用于生成一个指定范围内的整数,a为下限,b为上限,生成的随机整数 a<=n<=b; 若a=b,则n=a;若a>b,报错

import random
random.randint(10,20) # 输出 12
random.randint(10,10) # 输出 10
random.randint(20,10) # Error

.uniform(a,b)

用于生成一个指定范围内的随机浮点数,a,b为上下限,只要a!=b,就会生成介于两者之间的一个浮点数,若a=b,则生成的浮点数就是a

import random
random.uniform(10,20) # 输出 15.999997038152358
random.uniform(20,10) # 输出 12.718038067741021
random.uniform(10,10) # 输出 10.0

.choice(sequence)

从序列中获取一个随机元素,参数sequence表示一个有序类型,并不是一种特定类型,泛指list,tuple,字符串等

import random
random.choice(range(10)) # 输出0到10内随机整数
random.choice(range(10,100,2)) # 输出随机值[10,12,14,16...]
random.choice("I love python") # 输出随机字符I,o,v,p,y...
random.choice(("I love python")) # 同上
random.choice(["I love python"]) # 输出“I love python”
random.choice("I","love","python") # Error
random.choice(("I","love","python")) # 输出随机字符串“I”,“love”,“python”
random.choice(["I","love","python"]) # 输出随机字符串“I”,“love”,“python”

.shuffle(x[,random])

用于将一个列表中的元素打乱

import random
lis=['I','love','python','very','much']
random.shuffle(lis)
print(lis)    #输出乱序list

.sample(sequence,k)

从指定序列中随机获取k个元素作为一个片段返回,sample函数不会修改原有序列

import random
a='123456789'
b=[1,2,3,4,5,6,7,8,9]
c=['a','b','c','d','e']
random.sample(a,3)
random.sample(b,3)
random.sample(c,3)  #随机取三个元素最为一个片段返回[6,4,3]
print(a)
print(b)
print(c)    #a,b,c值不变


http://www.mrgr.cn/news/56433.html

相关文章:

  • Llama3-Factory模型部署新手指南
  • 大厂面试真题-Redis的Cluster模式的smart clent了解吗,怎么初始化的
  • java高并发加锁异常实战案例1
  • 【编程语言】Kotlin快速入门 - 集合与Lambda
  • 运行第一个go程序
  • 【Android_14】ACodec-OMX跨IPC的一些类
  • 【C++】— 一篇文章让你认识STL
  • Git的原理和使用(六)
  • 开源医疗管理的未来:参与码良诊所管理系统,助力智能医疗
  • 中国古代数学的杰出研究成果之一 - 杨辉三角 - 怎么用go、C++进行编程解决
  • 二叉树展开为链表
  • 代码随想录算法训练营第51天|101. 孤岛的总面积、102. 沉没孤岛、103. 水流问题、104.建造最大岛屿
  • 集合框架16:HashMap的使用
  • C++编程语言:抽象机制:特殊运算符(Bjarne Stroustrup)
  • 容灾与云计算概念
  • Javascript基础面试题
  • Leetcode—1114. 按序打印【简单】(多线程)
  • http作业
  • 10.22软考初级网络管理员工重点之因特网与网络互联技术
  • 红黑树(创建 插入 测试验证)
  • 深入了解Java
  • 力扣 困难 52.N皇后II
  • <a-table>行数据增加点击事件并获取点击行的数据+自定义button按事件
  • MySQL之CRUD(下)
  • 中间件之MQ-Kafka
  • sql数据库的命令行操作(修改表)