python中的random使用

转载 2013年12月05日 12:00:02
很多网络演化编程中都会用到生成随机数,今天找了一下随机数说明手册,整理一下:

(1)random.seed([x])
伪随机数生成模块。如果不提供 seed,默认使用系统时间。使用相同的 seed,可以获得完全相同的随机数序列,常用于算法改进测试。
>>>from random import *
>>>a = Random(); a.seed(1)
>>>[a.randint(1, 100) for i in range(20)]
[14, 85, 77, 26, 50, 45, 66, 79, 10, 3, 84, 44, 77, 1, 45, 73, 23, 95, 91, 4]

>>>b = Random(); b.seed(1)
>>>[b.randint(1, 100) for i in range(20)]
[14, 85, 77, 26, 50, 45, 66, 79, 10, 3, 84, 44, 77, 1, 45, 73, 23, 95, 91, 4]

(2)random.random
用于生成一个0到1的随机符点数: 0 <= n < 1.0

(3)random.uniform
用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果a > b,则生成的随机数n: a <= n <= b。如果 a <b, 则 b <= n <= a。
  
(4)random.randint
用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n: a <= n <= b

(5)random.randrange
从指定范围内,按指定基数递增的集合中 获取一个随机数。如:random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, ... 96, 98]序列中获取一个随机数。

(6)random.choice
从序列中获取一个随机元素。参数sequence表示一个有序类型。这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。

(7)random.shuffle
用于将一个列表中的元素打乱。

(8)random.sample(sequence, k),从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列。

这个模块很 "变态",还支持三角、β分布、指数分布、伽马分布、高斯分布等等非常专业的随机算法。

(9)random.triangular(low, high, mode)

Return a random floating point number N such that low <= N <= high and with the specified mode between those bounds. The low and highbounds default to zero and one. The mode argument defaults to the midpoint between the bounds, giving a symmetric distribution.

(10)random.betavariate(alpha, beta)β分布
Beta distribution. Conditions on the parameters are alpha > 0 and beta > 0. Returned values range between 0 and 1.

(11)random.expovariate(lambd)指数分布

Exponential distribution. lambd is 1.0 divided by the desired mean. It should be nonzero. (The parameter would be called “lambda”, but that is a reserved word in Python.) Returned values range from 0 to positive infinity if lambd is positive, and from negative infinity to 0 if lambd is negative.

(12)random.gammavariate(alpha, beta)伽马分布

Gamma distribution. (Not the gamma function!) Conditions on the parameters are alpha > 0 and beta > 0.

(13)random.gauss(mu, sigma)高斯分布
Gaussian distribution. mu is the mean, and sigma is the standard deviation. This is slightly faster than the normalvariate() function defined below.

(14)random.lognormvariate(mu, sigma)对数正态分布
Log normal distribution. If you take the natural logarithm of this distribution, you’ll get a normal distribution with mean mu and standard deviation sigma. mu can have any value, and sigma must be greater than zero.

(15)random.normalvariate(mu, sigma)正态分布

Normal distribution. mu is the mean, and sigma is the standard deviation.
random.vonmisesvariate(mu, kappa)
mu is the mean angle, expressed in radians between 0 and 2*pi, and kappa is the concentration parameter, which must be greater than or equal to zero. If kappa is equal to zero, this distribution reduces to a uniform random angle over the range 0 to 2*pi.

(16)random.paretovariate(alpha)帕累托分布
Pareto distribution. alpha is the shape parameter.

(17)random.weibullvariate(alpha, beta)
Weibull distribution. alpha is the scale parameter and beta is the shape parameter.

Python-random的用法

在Python中的库可以分为三种:标准库(也可以叫做内置库),第三方库,自定义库。接下来将记录一下几个常用的标准库的用法:randomrandom生成0-1的随机浮点数import random pr...
  • y472360651
  • y472360651
  • 2017年06月13日 14:05
  • 892

python uniform 函数

python的 uniform 函数
  • taotiezhengfeng
  • taotiezhengfeng
  • 2017年06月06日 09:32
  • 913

Python中的random库

很多网络演化编程中都会用到生成随机数,今天找了一下随机数说明手册,整理一下: (1)random.seed([x]) 伪随机数生成模块。如果不提供 seed,默认使用系统时间。使用相同的 se...
  • Javasus
  • Javasus
  • 2013年01月22日 14:21
  • 11499

python pandas中的random模块一些函数的用法

seed( ) 用于指定随机数生成时所用算法开始的整数值,如果使用相同的seed( )值,则每次生成的随即数都相同,如果不设置这个值,则系统根据时间来自己选择这个值,此时每次生成的随机数因时间差异而不...
  • wang1127248268
  • wang1127248268
  • 2016年12月12日 21:41
  • 1366

Python模块:生成随机数模块random

http://blog.csdn.net/pipisorry/article/details/39086463随机数种子要每次产生随机数相同就要设置种子,相同种子数的Random对象,相同次数生成的随...
  • pipisorry
  • pipisorry
  • 2014年09月05日 22:30
  • 34852

Python Random随机数

Python产生随机数的功能在random模块中实现,实现了各种分布的伪随机数生成器 该模块可以生成0到1的浮点随机数,也可以在一个序列中进行随机选择,产生的随机数可以是均匀分布,高斯分布,...
  • Calling_Wisdom
  • Calling_Wisdom
  • 2014年11月05日 14:28
  • 9314

Python的numpy库中rand(),randn(),randint(),random_integers()等random系函数的使用

在使用Python进行数据处理时,往往需要用到大量的随机数据,那如何构造这么多数据呢?Python的第三方库numpy库中提供了random函数来实现这个功能。 本文将根据官方文档以及其他博友的博客...
  • m0_38061927
  • m0_38061927
  • 2017年07月19日 09:43
  • 8671

python中的随机函数random

一、random模块简介 Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等。 二、ran...
  • xun527
  • xun527
  • 2017年08月05日 23:22
  • 449

Python Random函数常用方法及示例

这篇文章主要介绍了Python random函数(获取随机数)常用方法和使用例子,需要的朋友可以参考下 random.random random.random()用于生成一个0...
  • Cavien
  • Cavien
  • 2016年11月16日 19:09
  • 759

Python中的random模块

转自 Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。 random.random random.random()用于生成一个0到1的...
  • hncomputer
  • hncomputer
  • 2014年07月09日 11:15
  • 15348
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python中的random使用
举报原因:
原因补充:

(最多只允许输入30个字)