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.

相关文章推荐

6.6 random--伪随机数的生成

本模块提供了生成要求安全度不高的随机数。如果需要更高安全的随机数产生,需要使用os.urandom()或者SystmeRandom模块。random.seed(a=None, version=2) 初...

Python中的random库

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

Python Random模块使用

Python random模块使用

Python random模块(获取随机数)常用方法和使用例子

转自:http://www.jb51.net/article/50066.htm 随机浮点数 random.random random.random()用于生成一个0到1的随机浮点数: ...

python 学习记录(5)-变量、模块名的命名规则及random模块使用

学习:Python开发技术祥解 源文件\02\2.2\2.2.1 #!/usr/bin/python # -*- coding: UTF-8 -*- # 变量、模块名的命名规则 # F...

Python random crypto functions

  • 2016年01月24日 17:45
  • 3KB
  • 下载

Python random 生成随机数

  • 2014年08月18日 14:17
  • 1KB
  • 下载

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

http://blog.csdn.net/pipisorry/article/details/39086463随机数种子要每次产生随机数相同就要设置种子,相同种子数的Random对象,相同次数生成的随...

Python模块学习--random 随机数生成

转自:http://www.sqlite.com.cn/MySqlite/11/529.Html Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。...
  • s_jobs
  • s_jobs
  • 2012年09月07日 14:13
  • 658

Python Random函数常用方法及示例

这篇文章主要介绍了Python random函数(获取随机数)常用方法和使用例子,需要的朋友可以参考下 random.random random.random()用于生成一个0...
  • Cavien
  • Cavien
  • 2016年11月16日 19:09
  • 560
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python中的random使用
举报原因:
原因补充:

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