'''關於數據類型序列相關,參照https://www.cnblogs.com/yyds/p/6123692.html'''
隨機獲取0 到1 之間的浮點數,即 0.0 <= num < 1.0html
import random # 使用random模塊,必須導入 num = random.random() print(num) # 0.0 <= num < 1.0
隨機獲取m 到n 之間的整數,即m <= num <= npython
num = random.randint(2, 10) print(num) # 2 <= num <= 10, 注意:是整數
隨機獲取start 到stop之間的整數,且步長爲step,默認爲1。即start <= num < stopdom
默認步長時,random.randrange(1, 5) 等價於 random.randint(1, 4)code
# 默認步長 num = random.randrange(1, 5) print(num) # 設置步長爲2 num_step = random.randrange(1, 10, 2) # num_step的取值範圍是:1到9之間的任意一個奇數 print(num_step)
將列表中的元素順序打亂,相似洗牌的操做(不肯定是列表仍是可迭代對象,有誤請指正)htm
code_list = ['l', 'd', 'e', 'a', 'w', 'e', 'n'] random.shuffle(code_list) # 返回值爲None,直接在原列表中操做 print(code_list)
從一個非空序列中隨機取出一個元素返回對象
code_turple = ('l', 'd', 'e', 'a', 'w', 'e', 'n') res = random.choice(code_turple) print(res)
如下是一個獲取隨機驗證碼的小案例blog
''' 獲取隨機驗證碼小案例 chr(int(n)):用於將ASCⅡ碼的數值轉換成對應的字符,n的取值範圍在0~255,返回值爲字符串類型 ord(str('a')):用於將單字符字符串轉換成對應的ASCⅡ碼,返回值爲整型 在ASCⅡ碼中,數值65-90:大寫英文字符;數值97-122:小寫英文字符 ''' def get_code(n): '''n:生成幾位的驗證碼''' code = '' for line in range(n): # 隨機獲取任意一個小寫字符的ASCⅡ碼 l_code = random.randint(97, 122) # 將ASCⅡ碼轉換成對應的字符 l_code = chr(l_code) # 隨機獲取任意一個大寫字符的ASCⅡ碼 u_code = random.randint(65, 90) # 將ASCⅡ碼轉換成對應的字符 u_code = chr(u_code) # 隨機獲取任意一個0-9之間的數字 n_code = random.randint(0, 9) # 將上述3個隨機字符存儲起來 code_list = [l_code, u_code, n_code] # 從列表中任意取出一個 random_code = random.choice(code_list) # 將字符拼接起來 code += str(random_code) return code print(get_code(5))