1. 程式人生 > 其它 >【Python知識】random

【Python知識】random

random顧名思義,就是取隨機數,需要匯入random模組。

import random

1、隨機獲取一個0到1之間的小數(不含首尾)

print(random.random())

2、隨機獲取一個大於0小於3的小數

print(random.uniform(0,3))

3、隨機獲取一個 1到3 之間的整數(含首尾)

print(random.randint(1,3))

4、隨機獲取一個 1到3 之間的整數(不含尾)

print(random.randrange(1,3))

5、隨機一個1到10之間的整數,其中2表示遞增基數

print(random.randrange(1,10,2))

6、隨機獲取字串中任意一個元素

print(random.choice('123asd'))

7、隨機返回元組中任意一個元素

print(random.choice(('123','sdfsd')))

8、隨機返回列表中任意一個元素

print(random.choice(['123','sdfsd',242,'asfasf']))

9、以列表形式隨機返回引數列表中任意兩個元素,引數二指定返回的數量

print(random.sample(['123','abc','asf',345],2))

10、洗牌:隨機打亂列表順序

li = [1,2,3,4]
random.shuffle(li)
print(li)

11、例項:

實現驗證碼功能:由英文字母+數字組成

程式碼如下:

def getCheckCode(n):
    '''
    隨機獲取由英文字母+數字組成驗證碼,驗證碼的長度(位數)由使用者決定
    :param n:  驗證碼長度
    :return:  驗證碼
    '''
    checkCode = ''  # 驗證碼
    for i in range(n):
        ci = random.randrange(0,n)  # 隨機獲取0到4之間的一個數
        if i == ci:
            rd = chr(random.randint(65,90))  # print(ord('Z'))  # a到z:97 - 122  A到Z:65-90
        else:
            rd = random.randint(0,9)
        checkCode += str(rd)
    return checkCode

n = int(input('您想獲取幾位驗證碼?\n'))
ccode = getCheckCode(n)
print('您的%d位驗證碼為:%s'%(n,ccode))

執行結果:

作者:gtea 部落格地址:https://www.cnblogs.com/gtea