Python3内置模块random随机方法小结

yipeiwu_com5年前Python基础

前言

random是Python中与随机数相关的模块,其本质就是一个伪随机数生成器,我们可以利用random模块基础生成各种不同的随机数,以及一些基于随机数的操作。

生成随机数相关

生成0~1之间的浮点数

import random
r = random.random()
print(r)
r = random.random()
print(r)

示例结果:

0.9928249533693085
0.474901555446297

生成指定范围内的浮点数

import random
r = random.uniform(1, 100)
print(r)
r = random.uniform(100, 1)
print(r)

示例结果:

69.0347778479432
3.2085981780335118

即随机范围两端可以随意放置范围,无须左边小右边大。

生成指定范围内的整数

import random
r = random.randint(1, 100)
print(r)

示例结果:

58

randrange生成随机整数

利用randrange生成递增序列然后从序列中随机返回一个整数

import random
# 0 - 100 随机序列
r = random.randrange(101)
print(r)
# 10 - 100 随机序列
r = random.randrange(10, 101)
print(r)
# 10 - 100 并且步进(间隔)为3 的 随机序列
r = random.randrange(10, 101, 3)
print(r)

示例结果:

52
60
46

序列处理相关

从序列中获取一个随机元素

利用random.choice(iter)从任意序列中,比如列表,元组,字典等随意获取一个元素

import random
S = 'I like Python'
# 生成一个列表
L = S.split(' ')
print(L)
r = random.choice(L)
print(r)

打乱序列元素的排列顺序

利用random.shuffle(iter)将原序列中的元素排列打乱

import random
S = 'I like Python'
# 生成一个列表
L = S.split(' ')
print(L)
random.shuffle(L)
print(L)

示例结果:

['I', 'like', 'Python']
['like', 'Python', 'I']

从序列随机获取多个元素

利用random.sample()序列中随机获取指定个数的元素,并返回指定长度的序列,不会改变原有序列

# 生成一个递增序列
L = range(11)
rs = random.sample(L, 4)
print(rs)

示例结果:

[1, 0, 10, 7]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python实现的生成word文档功能示例

python实现的生成word文档功能示例

本文实例讲述了python实现的生成word文档功能。分享给大家供大家参考,具体如下: 每月1次的测试费用报销,需要做一个文档。干脆花点时间写个程序吧。 # -*- coding:...

快速实现基于Python的微信聊天机器人示例代码

快速实现基于Python的微信聊天机器人示例代码

最近听说一个很好玩的图灵机器人api,正好可以用它做一个微信聊天机器人,下面是实现 # test.py import requests import itchat #这是一个用于...

Python数据结构之哈夫曼树定义与使用方法示例

Python数据结构之哈夫曼树定义与使用方法示例

本文实例讲述了Python数据结构之哈夫曼树定义与使用方法。分享给大家供大家参考,具体如下: HaffMan.py #coding=utf-8 #考虑权值的haff曼树查找效率并非最...

pandas将DataFrame的列变成行索引的方法

pandas提供了set_index方法可以将DataFrame的列(多列)变成行索引,通过reset_index方法可以将层次化索引的级别会被转移到列里面。 1、DataFrame的s...

详解python之heapq模块及排序操作

说到排序,很多人可能第一想到的就是sorted,但是你可能不知道python中其实还有还就中方法哟,并且好多种场景下效率都会比sorted高。那么接下来我就依次来介绍我所知道的排序操作。...