一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Python中生成一个指定长度的随机字符串实现代码实例

时间:2019-11-06 编辑:袖梨 来源:一聚教程网

本篇文章小编给大家分享一下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

热门栏目