python中生成一个指定长度的随机字符串实现示例

Posted 四叶草134

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

 

转摘原创:https://blog.csdn.net/geerniya/article/details/78497765

 

以上是关于python中生成一个指定长度的随机字符串实现示例的主要内容,如果未能解决你的问题,请参考以下文章

golang 在Golang中生成给定长度的随机字符串

在 Java ME/J2ME 中生成随机十六进制字符串(长度为 50)

生成仅包含指定字符的指定长度的随机字符串(在 Java 中)

如何在 Matlab 中生成随机字符串?

在 Python 中生成随机文件名的最佳方法

如何在 Java 中生成长度为 n 的 SecureRandom 字符串? [复制]