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

佛山网站建设网络推广互动营销案例100

佛山网站建设网络推广,互动营销案例100,免费网站建设新技术,诗词门户网站随机数在计算机科学领域扮演着重要的角色,用于模拟真实世界的随机性、数据生成、密码学等多个领域。Python 中的 random 模块提供了丰富的随机数生成功能,本文整理了 random 模块的使用。 文章目录 Python random 模块注意事项Python random 模块的内置…

随机数在计算机科学领域扮演着重要的角色,用于模拟真实世界的随机性、数据生成、密码学等多个领域。Python 中的 random 模块提供了丰富的随机数生成功能,本文整理了 random 模块的使用。

文章目录

  • Python random 模块
    • 注意事项
    • Python random 模块的内置函数
      • randint()
      • randrange()
      • random()
      • uniform()
      • gauss(mu, sigma)
      • sample()
      • choice(sequence)
      • shuffle(sequence)
      • seed(a=None)

Python random 模块

注意事项

  • 伪随机性:Python 使用 random 模块生成各种分布的伪随机数。计算机生成的随机数都是伪随机数,它们是由确定性算法生成的,只是看起来像随机。如果需要高度的随机性,需要额外的随机源。

  • 不同类型的随机性:在模拟、密码学等场景中,需要注意不同类型的随机性需求。如果前往 Python 文档以获取此模块的文档,将会看到一条警告:

    在这里插入图片描述
    显然,random 模块只适用于一般的随机数需求。random 模块使用 Mersenne Twister 算法来生成随机数。但是这种算法是完全确定性的,而对于密码学等需要高强度随机性的场景,应该使用 secrets 模块。

Python random 模块的内置函数

下面是 random 模块下的各种内置函数。这些函数能够在不同场景下生成伪随机数:

在这里插入图片描述
下面的列表包含了上述随机数生成函数的简要说明:

函数名描述
randint(a, b)生成一个位于 [a, b] 范围内的随机整数
randrange(start, stop, step)生成一个以 step 递增的整数序列中的随机元素
random()生成一个位于 [0.0, 1.0) 范围内的随机浮点数
uniform(a, b)生成一个位于 [a, b) 范围内的随机浮点数
gauss(mu, sigma)生成一个符合高斯分布的随机浮点数,均值为 mu,标准差为 sigma
sample(population, k)population 序列中随机选择 k 个元素,不重复
choice(sequence)从序列中随机选择一个元素
shuffle(sequence)随机打乱序列中的元素顺序
seed(a=None)初始化随机数生成器的种子,用于重现随机序列

下面是这些函数的更详细介绍及示例。

randint()

此函数生成指定范围之间的整数。它接受两个参数 x x x y y y 并生成整数 i i i,使得 x < = i < = y x <= i <= y x<=i<=y

import randoma = random.randint(3, 6)
print(a)	# 输出:3

randrange()

该函数生成一个以 step 为步长的整数序列中的随机元素。startstop 是范围,取值范围是 [start, stop)。若省略 step 参数,默认为 1。

import randoma = random.randrange(1, 10, 2)
print(a)	# 输出:7

random()

该函数生成一个位于 [0.0, 1.0) 范围内的随机浮点数。所有数字在这个范围内的概率是相等的。

import randoma = random.random()
print(a)	# 输出:0.6427979778735594

uniform()

该函数生成一个位于 [a, b) 范围内的随机浮点数。类似于random(),但可以指定范围。

import randoma = random.uniform(3, 6)
print(a)	# 输出:3.512451152441262

gauss(mu, sigma)

该函数生成一个符合高斯分布(也称为正态分布)的随机浮点数。mu 是均值,sigma 是标准差,控制分布的形状。

import randoma = random.gauss(3, 0.5)
print(a)	# 输出:2.9743970359818612

sample()

如果想要一个序列中的多个随机元素,可以使用 sample()。它需要两个参数 populationk,其中 population 是一个序列,k 是一个整数。然后,该函数从 population 序列中随机选择 k 个元素,并以列表形式返回。选择不重复。

import randomseq = (12, 33, 67, 55, 78, 90, 34, 67, 88)
a = random.sample(seq, 5)
print(a)	# 输出:[88, 78, 67, 34, 33]

choice(sequence)

如果要从特定序列中选择随机元素,可以使用此函数。它需要一个参数——sequence。它从序列中返回一个随机元素。

import randomseq = (12, 33, 67, 55, 78, 90, 34, 67, 88)
a = random.choice(seq)
print(a)	# 输出:88

注意random.choice(seq) 不等同于 random.sample(seq, 1),前者返回元素,后者返回列表。

shuffle(sequence)

此函数采用一个参数 —— 列表。然后,它会将列表的元素打乱并返回。

import randoma = [10, 20, 30, 40, 50]
random.shuffle(a)
print(a)	# 输出:[30, 10, 20, 40, 50]

seed(a=None)

当需要多次生成相同的随机数序列时,可以使用此函数。它需要一个参数 —— 种子值。此值初始化伪随机数生成器。每当使用相同的种子值调用 seed() 函数时,它都会产生完全相同的随机数序列,这对于需要重现随机结果的情况很有用。

import random
# seed value = 3
random.seed(3)
for i in range(3):print(random.random(), end = ' ')print('\n')# seed value = 8
random.seed(8)
for i in range(3):print(random.random(), end = ' ')print('\n')# seed value again = 3
random.seed(3)
for i in range(3):print(random.random(), end = ' ')print('\n')

输出:
0.23796462709189137 0.5442292252959519 0.36995516654807925

0.2267058593810488 0.9622950358343828 0.12633089865085956

0.23796462709189137 0.5442292252959519 0.36995516654807925

可以看出,对于种子 = 3,每次都会生成相同的序列。

http://www.hkea.cn/news/4726/

相关文章:

  • 网购网站开发流程图大数据精准获客软件
  • app下载安装官方网站如何让百度收录网址
  • 湖北武汉网站制作长沙网站推广智投未来
  • 社保网站做的真烂查域名ip地址查询
  • 西安网站设计公司排名收录优美的图片app
  • 网站ipv6改造怎么做专业的seo搜索引擎优化培训
  • 做网站武汉首选福州外包seo公司
  • 陕西西安网站建设新媒体运营岗位职责
  • 重庆做网站设计免费放单平台无需垫付
  • 济南高新区 网站建设百度推广客户端mac版
  • 网上有做任务赚钱的网站有哪些自己开发网站
  • 投标网站建设服务承诺今日小说搜索风云榜
  • 香港做网站找谁兰州网络推广技术
  • 佛山宽屏网站建设建站推广
  • 深圳网站建设策划太原seo关键词排名优化
  • 乌托邦网站建设快速排名软件案例
  • 主机屋vps网站助手销售清单软件永久免费版
  • 博客系统做网站企业网站营销
  • 塑胶原料 东莞网站建设独立站seo搜索优化
  • web 设计网站模板下载重庆百度竞价开户
  • html表白简单代码宁波seo深度优化平台
  • 陕西省建设厅网站首页邮件营销
  • 网站开发工作周记天津百度
  • 网站的营销特点怎么营销推广
  • 聊城正规网站建设设计公司软文广告属于什么营销
  • 湖南建筑公司网站排名优化哪家专业
  • 复兴企业做网站推广yande搜索引擎官网入口
  • 基于.net平台网站内容管理系统研究与实现搜一搜百度
  • 建立公司网站需要注意什么图片搜索
  • 四叶草m码和欧洲码的区别seo标题优化关键词