Python Random模塊

 

 

# encoding: utf-8

"""
@author: sunxianpeng
@file: random.py
@time: 2019/12/2 17:39
"""
import random
def random_float_num():
    """隨機生成浮點數:有兩種,一種沒有參數,默認(0-1),另一種可以指定隨機生成的浮點數範圍。"""
    print("######################隨機生成浮點數#######################")
    #
    # #從0~1中間隨機產生一個小數點後16位的浮點數
    print('random.random = {}'.format(random.random()))
    # 從1~3中間隨機產生一個小數點後16位的浮點數
    print('random.uniform = {}'.format(random.uniform(10,20)))
    # random.random = 0.21846360217280592
    # random.uniform = 11.69708818020138

def random_range_int():
    """隨機生成指定範圍的整數:有兩種方法,第二種除了可以指定範圍,還可以指定步長。"""
    print("###################隨機生成指定範圍的整數#####################")
    print('random.randint = {}'.format(random.randint(1,10)))
    print('random.randrange = {}'.format(random.randrange(10, 20)))
    print('random.randrange = {}'.format(random.randrange(10, 20,5)))
    #random.randint = 4
    # random.randrange = 19
    # random.randrange = 15

def random_choice():
    """隨機生成指定樣式中的元素:樣式可以是字符串、元組、列表。"""
    print("###################隨機生成指定樣式中的元素######################")
    # 從列表中隨機選擇一個元素
    list_1 = [1,2,'a','b']
    print('random.choice list_1 = {}'.format(random.choice(list_1)))
    # 從列表中隨機選擇一個元素組成一個新列表
    list_2 = [1,2,3,4]
    print('random.choices list_2 = {}'.format(random.choices(list_2)))
    str_1 = 'abcdefg'
    print('random.choice str_1  = {}'.format(random.choice(str_1)))
    tup_1 = (1,2,3,4)
    print('random.choice tup_1  = {}'.format(random.choice(tup_1)))
    #random.choice list_1 = 2
    # random.choice list_2 = 1
    # random.choice str_1  = d
    # random.choice tup_1  = 4

def random_sample():
    """隨機生成指定數目的指定樣式中的元素:樣式可以是字符串、元組、列表、集合。"""
    print("#################隨機生成指定數目的指定樣式中的元素###################")
    # 必須指定選擇的元素個數,
    str_1 = 'abcdefg'
    print('random.sample str_1 = {}'.format(random.sample(str_1,2)))
    tup_1 = (1,2,3,4)
    print('random.sample tup_1 = {}'.format(random.sample(tup_1, 3)))
    list_1 = [1,2,3,4,5,6,7,8,9]
    print('random.sample list_1 = {}'.format(random.sample(list_1, 3)))
    #random.sample str_1 = ['a', 'd']
    # random.sample tup_1 = [3, 2, 4]
    # random.sample list_1 = [4, 5, 2]

def random_shuffle():
    """將列表的元素的順序打亂:類似於生活中的洗牌,此方法返回值爲空,將改變原來列表"""
    print("######################將列表的元素的順序打亂######################")
    item = [1,2,3,4,5,6]
    print('before shuffle sequence = {}'.format(item))
    random.shuffle(item)
    print('after shuffle sequence = {}'.format(item))
    #before shuffle sequence = [1, 2, 3, 4, 5, 6]
    # after shuffle sequence = [6, 3, 4, 2, 1, 5]

def getSixNumVerificationCode():
    print("###################隨機生成六位數字驗證碼####################")
    """隨機生成六位數字驗證碼"""
    captcha = ''
    for i in range(6):
        num = random.randint(0,9)
        captcha += str(num)
    print(captcha)# 886515

if __name__ == '__main__':
    #1、 隨機生成浮點數
    random_float_num()
    #2、隨機生成指定範圍的整數
    random_range_int()
    # 3、隨機生成指定樣式中的元素
    random_choice()
    # 4、隨機生成指定數目的指定樣式中的元素
    random_sample()
    # 5、將列表的元素的順序打亂
    random_shuffle()
    # 6、隨機生成六位數字驗證碼
    getSixNumVerificationCode()

 

 

 

 

發佈了167 篇原創文章 · 獲贊 4 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章