我是靠谱客的博主 高大凉面,最近开发中收集的这篇文章主要介绍Python伪随机数random和seed详解一、伪随机数random和seed二、Python代码示例三、输出结果四、应用场景Reference,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

文章目录

  • 一、伪随机数random和seed
  • 二、Python代码示例
  • 三、输出结果
  • 四、应用场景
  • Reference

一、伪随机数random和seed

初始化随机数生成器:random.seed(a=None)

  • 如果 a 被省略或为 None ,则使用当前系统时间
  • 每给定一个seed,它会生成一个序列,如序列X: 0.1,3.2,1.5,9.7…
    你每次random.random()只是按顺序取了一个X中的点

对于同一个seed,它产生的序列是固定的,所以随机化结果必然相同,而系统时间在不断变大,所以产生的序列必然不同

二、Python代码示例

import random
print("不加seed语句时,默认是用random.seed()") # 即使用当前的系统时间为seed
print(random.random())
print(random.random())
print(random.random())
print("seed=45")
random.seed(45) # 指定seed为45
print(random.random())  # 取seed=45产生序列的第一个元素
print(random.random())  # 取seed=45产生序列的第二个元素
print(random.random())  # 取seed=45产生序列的第三个元素

print("nseed=45")
random.seed(45)
print(random.random())
print(random.random())
print(random.random())

print("nseed=当前系统时间")
random.seed()  # 默认是当前系统时间
print(random.random())
print(random.random())
print(random.random())

print("nseed=当前系统时间")
random.seed()
print(random.random())
print(random.random())
print(random.random())

三、输出结果

不加seed语句时,默认是用random.seed()
0.20832862243131767
0.4210403813034972
0.4153058477463908
seed=45
0.2718754143840908
0.48802820785090784
0.08187934237116656

seed=45
0.2718754143840908
0.48802820785090784
0.08187934237116656

seed=当前系统时间
0.9664157011016027
0.9963620166960119
0.00929090874812366

seed=当前系统时间
0.1560896344276015
0.26724242598166137
0.5839125852630351

四、应用场景

Weka每次会初始化随机生成器(给定一个特定seed),这主要是为了保证你明天做这个实验时得到的还是相同的结果

Reference

  • https://stackoverflow.com/questions/22639587/random-seed-what-does-it-do
    在这里插入图片描述

最后

以上就是高大凉面为你收集整理的Python伪随机数random和seed详解一、伪随机数random和seed二、Python代码示例三、输出结果四、应用场景Reference的全部内容,希望文章能够帮你解决Python伪随机数random和seed详解一、伪随机数random和seed二、Python代码示例三、输出结果四、应用场景Reference所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部