Python Random 라이브러리 사용법 배우기 1 분

Python에 대한 기본 소개-랜덤 라이브러리

랜덤 라이브러리는 난수를 사용하는 Python 표준 라이브러리입니다.

파이썬에서 의사 난수를 생성하는 데 사용되는 라이브러리는 무작위입니다.

표준 라이브러리이기 때문에 사용할 때 무작위로 가져 오기만하면됩니다.

랜덤 라이브러리에는 일반적으로 사용되는 총 9 개의 함수가 포함되어 있습니다.

기본 랜덤 함수 : seed (), random ()

seed(a=None)	
初始化给定的随机数种子,默认为当前系统时间

>>>random.seed(10)     #产生种子10对应的序列

 random()	
生成一个[0.0,1.0)之间的随机小数

>>>random.random()

0.5714025946899135            #随机数产生与种子有关,如果种子是1哦,第一个数必定是这个

使用随机数种子的好处是可以复现有随机数的程序

일반적으로 사용되는 확장 random () 메서드
여기에 사진 설명 삽입

확장 된 랜덤 함수 : randint (), getrandbits (), uniform (), randrange (), choice (), shuffle (), sample ()

여기에 사진 설명 삽입

在random库中,最基本的是seed 和random 函数,但时功能比较单一,为此产生了6个扩展随机数函数

扩展随机数函数
函数	描述
 randint(a,b)	
生成一个[a,b]之间的整数

>>>random.randint(10,100)

 randrange(m,n[,k])	
生成一个[m,n)之间以k为步长的随机整数

>>>random.randrange(10,100,10)

 getrandbits(k)	
生成一个k比特长的随机整数

>>>random.getrandbits(16)

37885

 uniform(a,b)	
生成一个[a,b]之间的随机小数

>>>random.uniform(10,100)

16.848041210321334

choice(seq)

序列相关

从序列中随机选择一个元素

>>>random.choice([1, 2, 3, 4, 5, 6, 7, 8, 9])

8

shuffle(seq)

序列相关

将序列seq中元素随机排列,返回打乱后的序列

>>>s=[1, 2, 3, 4, 5, 6, 7, 8, 9]; random.shuffle(s); print(s)

[9, 4, 6, 3, 5, 2, 8, 7, 1]

일반적인 예를 들어

随机整数:
 
代码如下:
>>> import random
>>> random.randint(0,99)
# 21
 
随机选取0到100间的偶数:
 
代码如下:
>>> import random
>>> random.randrange(0, 101, 2)
# 42
 
随机浮点数:
 
代码如下:
>>> import random
>>> random.random()
0.85415370477785668
>>> random.uniform(1, 10)
# 5.4221167969800881
 
随机字符:
 
代码如下:
>>> import random
>>> random.choice('abcdefg&#%^*f')
# 'd'
 
多个字符中选取特定数量的字符:
 
代码如下:
>>> import random
random.sample('abcdefghij', 3)
# ['a', 'd', 'b']
 
多个字符中选取特定数量的字符组成新字符串:
 
代码如下:
>>> import random
>>>''.join( random.sample(['a','b','c','d','e','f','g','h','i','j'], 3) )
# 'fih'
 
随机选取字符串:
 
代码如下:
>>> import random
>>> random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] )
# 'lemon'
 
洗牌:
 
代码如下:
>>> import random
>>> items = [1, 2, 3, 4, 5, 6]
>>> random.shuffle(items)
>>> items
# [3, 2, 5, 6, 4, 1]

추천

출처blog.csdn.net/xieminglu/article/details/109283484