python-隨機操作(random)


random模塊作用是返回隨機數,只要跟隨機元素相關的,都可以使用它。

Python標准庫中的random函數,可以生成隨機浮點數、整數字符串,甚至幫助你隨機選擇列表序列中的一個元素,打亂一組數據等。

1、random模塊方法說明

random.random()函數是這個模塊中最常用的方法了,它會生成一個隨機的浮點數,范圍是在0.0~1.0之間。

random.uniform(a,b)正好彌補了上面函數的不足,它可以設定浮點數的范圍,一個是上限,一個是下限。

random.randint(a,b)隨機生一個整數int類型,可以指定這個整數的范圍,同樣有上限和下限值(下限必須不大於上限)。

random.randrange([start], stop[, step])從指定范圍內,按指定基數遞增的集合(即等差數列)中獲取一個隨機數。與 random.choice(range([start], stop[, step]) 等效

random.choice(seq)可以從任何序列,比如list列表中,選取一個隨機的元素返回,可以用於字符串、列表、元組等(不能用於元組,字典)。

random.shuffle(list)隨機打亂列表元素,改變原列表。

random.sample(seq,k)從指定的序列seq中,隨機選取k個元素,不改變原序列,可以用於元組、字典。注意:輸出結果為列表(list)。seq為字典時,選取的是key。

2、實例

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2017/12/26 10:32
# @Author  : Andes
# @Site    :
import random

print random.random()  # 生成(0.0, 1.0)的隨機數
print random.uniform(0, 100)  # 生成隨機浮點數 0<N<100
print random.randint(0, 100)  # 生成隨機整數 0<N<100
print random.randrange(0, 100, 3)  # 隨機生成一個1-100內3的倍數
print '******************************'
list1 = [1, 'a', 3.5, 'python', 'ha ha']
tuple1 = (1, 2.3, 5, 6, 7.0)
str1 = 'I am a Chinese!'
dict1 = {'a': 1, 'b': 2.0, '25': 50, 'd': 5.5, '12': 'he he'}
set1 = {1, 'a', 2, 'b', 3}
print random.choice(list1), list1 # 隨機選擇一個列表元素
print random.choice(tuple1), tuple1  # 隨機選擇一個元組元素
print random.choice(str1), str1  # 隨機選擇一個字符串元素
print '******************************'
a = random.sample(list1, 3)
print a, type(a), list1

b = random.sample(tuple1, 3)
print b, type(b), tuple1

c = random.sample(str1, 3)
print c, type(c), str1

d = random.sample(dict1, 3)
print d, type(d), dict1

e = random.sample(set1, 3)
print e, type(e), set1
print '******************************'
random.shuffle(list1)
print list1

輸出結果:
0.0920955322102
70.2123410421
36
18
******************************
ha ha [1, 'a', 3.5, 'python', 'ha ha']
7.0 (1, 2.3, 5, 6, 7.0)
I I am a Chinese!
******************************
['a', 'ha ha', 3.5] <type 'list'> [1, 'a', 3.5, 'python', 'ha ha']
[7.0, 5, 2.3] <type 'list'> (1, 2.3, 5, 6, 7.0)
['e', 'h', ' '] <type 'list'> I am a Chinese!
['a', 'b', '25'] <type 'list'> {'a': 1, '25': 50, '12': 'he he', 'b': 2.0, 'd': 5.5}
['b', 1, 'a'] <type 'list'> set(['a', 1, 2, 'b', 3])
******************************
[3.5, 'python', 'a', 'ha ha', 1]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM