Python_05_附录2_随机函数示例

附录2: 随机函数示例


Python shuffle() 函数

Python_05_数字 返回到 『Python_05_数字』

描述

shuffle() 方法将序列的所有元素随机排序

语法

以下是 shuffle() 方法的语法:

import random

random.shuffle (lst )

注意:shuffle()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。

参数

  • lst — 可以是一个序列或者元组

返回值

返回随机排序后的序列。


实例

以下展示了使用 shuffle() 方法的实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 未闻花名 vwhm.net

import random

list = [5,2,0];
random.shuffle(list)
print "随机排序列表 : ",  list

random.shuffle(list)
print "随机排序列表 : ",  list

以上实例运行后输出结果为:

随机排序列表 :  [2, 5, 0]
随机排序列表 :  [5, 0, 2]

Python choice() 函数

Python_05_数字 返回到 『Python_05_数字』

描述

choice() 方法返回一个   列表/元组/字符串中的随机项。

语法

以下是 choice() 方法的语法:

import random

random.choice( seq  )

注意:choice()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。

参数

  • seq — 可以是一个列表,元组或字符串。

返回值

返回随机项。


实例

以下展示了使用 choice() 方法的实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 未闻花名 vwhm.net

import random

print "choice([5, 2, 0]) : ", random.choice([5,2,0])
print "choice('beyond') : ", random.choice('beyond')

以上实例运行后输出结果为:

choice([5,2,0]) :  2
choice('beyond') :  b

Python random() 函数

Python_05_数字 返回到 『Python_05_数字』

描述

random() 方法返回随机生成的一个实数,它在[0,1)范围内。

语法

以下是 random() 方法的语法:

import random

random.random()

注意:random()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。

参数

返回值

返回随机生成的一个实数,它在[0,1)范围内。


实例

以下展示了使用 random() 方法的实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 未闻花名 vwhm.net

import random

# 生成第一个随机数
print "random() : ", random.random()

# 生成第二个随机数
print "random() : ", random.random()

以上实例运行后输出结果为:

random() :  0.281954791393
random() :  0.309090465205

Python randrange() 函数

Python_05_数字 返回到 『Python_05_数字』

描述

randrange() 方法返回指定step递增 的集合中的一个随机数,step缺省值为1。

语法

以下是 randrange() 方法的语法:

import random

random.randrange ([start,] stop [,step])

注意:randrange()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。

参数

  • start — 指定范围内的开始值,包含在范围内。
  • stop — 指定范围内的结束值,不包含在范围内前闭后开
  • step — 指定递增基数。

返回值

从给定的范围返回随机项。


实例

以下展示了使用 randrange() 方法的实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 未闻花名 vwhm.net

import random

# 输出 9 或 12 
print "randrange(9, 15, 3) : ", random.randrange(9, 15, 3)

# 输出 100 <= number < 1000 间, 以20为间隔
print "randrange(100, 1000, 20) : ", random.randrange(100, 1000, 20)

以上实例运行后输出结果为:

randrange(9, 15, 3) : 12 # 只会是9 或 12之一
randrange(100, 1000, 20) : 520

Python seed() 函数

Python_05_数字 返回到 『Python_05_数字』

描述

seed() 方法改变随机数生成器的种子,可以在调用其他随机模块函数之前调用此函数。

语法

以下是 seed() 方法的语法:

import random

random.seed ( [x] )

注意:seed(()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。

参数

  • x — 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。

返回值

本函数没有返回值。


实例

以下展示了使用 seed() 方法,每次都生成同一个随机数的实例: ​​

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 未闻花名 vwhm.net

import random

random.seed( 67 )
print "Random number with seed 67 : ", random.random()

# 生成同一个随机数
random.seed( 67 )
print "Random number with seed 67 : ", random.random()

# 生成同一个随机数
random.seed( 67 )
print "Random number with seed 67 : ", random.random()

以上实例运行后输出结果为:

Random number with seed 67 :  0.52067131467
Random number with seed 67 :  0.52067131467
Random number with seed 67 :  0.52067131467

Python uniform() 函数

Python_05_数字 返回到 『Python_05_数字』

描述

uniform() 方法将随机生成下一个实数,它在[x,y]范围内。

语法

以下是 uniform() 方法的语法:

import random

random.uniform(x, y)

注意:uniform()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。

参数

  • x — 随机数的最小值。
  • y — 随机数的最大值。

返回值

返回一个浮点数。


实例

以下展示了使用 uniform() 方法的实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 未闻花名 vwhm.net

import random

print "uniform(5, 10) 的随机数为 : ",  random.uniform(5, 10)

print "uniform(7, 14) 的随机数为 : ",  random.uniform(7, 14)

以上实例运行后输出结果为:

uniform(5, 10) 的随机数为 :  6.98774810047
uniform(7, 14) 的随机数为 :  12.2243345905

隐藏
换装