1. 程式人生 > 程式設計 >Python中生成一個指定長度的隨機字串實現示例

Python中生成一個指定長度的隨機字串實現示例

方法一:

定義一個函式,引數為所要生成隨機字串的長度。通過random.randint(a,b)方法得到隨機數字,具體函式如下:

def generate_random_str(randomlength=16):
  """
  生成一個指定長度的隨機字串
  """
  random_str = ''
  base_str = 'ABCDEFGHIGKLMNOPQRSTUVWXYZabcdefghigklmnopqrstuvwxyz0123456789'
  length = len(base_str) - 1
  for i in range(randomlength):
    random_str += base_str[random.randint(0,length)]
  return random_str

測試下:

f = generate_random_str(24)
print (f)

得到結果:

gSY28gHCpTiL1yH0hO0uslM2

方法二:

方法一中我們採用將數字及字母羅列出來,並從中隨機選擇的方法進行生成,顯得不夠pythonic,方法二中我們採用string模組得到數字及字母,並通過列表生成式的方法得到結果。方法如下:

import random
import string

def generate_random_str(randomlength=16):
  """
  生成一個指定長度的隨機字串,其中
  string.digits=0123456789
  string.ascii_letters=abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
  """
  str_list = [random.choice(string.digits + string.ascii_letters) for i in range(randomlength)]
  random_str = ''.join(str_list)
  return random_str

測試下:

f = generate_random_str(24)
print (f)

得到結果:

aCIyZ9a06gN6UlBCmrjDfX4a

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。