迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中生成随机字符串

作者:迹忆客 最近更新:2023/12/17 浏览次数:

在本教程中,我们将研究在 Python 中生成随机字符串的各种方法。随机字符串生成技术用于生成随机的用户名,密码或文件名等。

在某些情况下,我们需要加密安全的字符串,即随机密码或密钥生成。如果我们需要使用随机字符串作为随机的用户名和文件名等,仅使用随机字符串就足够了。在本教程中,我们将讨论两种类型的随机字符串生成,下面将对此进行说明。


在 Python 中使用 random.choice()string.join() 方法生成随机字符串

random.choice(seq) 方法从作为输入提供的序列 seq 中返回一个随机选择的元素。string.join(iterable) 方法通过使用提供的 string 值作为分隔符来连接 iterable 的元素,并返回结果字符串作为输出。

要在 Python 中生成随机字符串,我们需要向 random.choice() 方法提供字符序列,以使我们的代码从中生成随机字符串。输入序列可以由大写字母,小写字母,数字和标点符号等组成。

我们可以分别在大写字母和小写字母序列中使用 string.ascii_uppercasestring.ascii_lowercase,两者都使用 string.ascii_letters,数字序列使用 string.digits,标点符号序列使用 string.punctuation

下面的示例代码演示了如何使用 Python 中的 random.choice()string.join() 方法生成所需类型的随机字符串。

import string
import random

number_of_strings = 5
length_of_string = 8
for x in range(number_of_strings):
    print(
        "".join(
            random.choice(string.ascii_letters + string.digits)
            for _ in range(length_of_string)
        )
    )

输出:

wOy5ezjl
j34JN8By
clA5SNZ6
D8K0eggH
6LjRuYsb

为了生成加密安全的随机字符串,我们可以使用 random.SystemRandom() 方法,该方法从操作系统的源中生成随机数。

示例代码:

import string
import random

number_of_strings = 5
length_of_string = 8
for x in range(number_of_strings):
    print(
        "".join(
            random.SystemRandom().choice(string.ascii_letters + string.digits)
            for _ in range(length_of_string)
        )
    )

输出:

PEQBU72q
xuwUInGo
asVWVywB
SAsMRjka
CrbIpuR6

在 Python 中使用 uuid.uuid4() 方法生成随机字符串

uuid.uuid4() 方法生成并返回一个随机 UUID。UUID 是一个 128 位长的通用唯一标识符,用于标识系统或网络中的信息。

如果我们要从随机字符串中生成随机且唯一的标识符,则此方法很有用。下面的示例代码演示了如何使用 uuid.uuid4() 方法在 Python 中获取随机字符串。

import uuid

print(uuid.uuid4())

输出:

440a93fe-45d7-4ccc-a6ee-baf10ce7388a

在 Python 中使用 StringGenerator.render_list() 方法生成随机字符串

StringGenerator().render_list() 是在 Python 中生成多个随机字符串的简便方法。StringGenerator() 将正则表达式作为输入,它定义了用于生成随机字符串的字符。在 renderlist(len, unique=) 方法中,len 指定包含随机字符串的输出列表的长度,如果我们想要唯一的输出字符串,可以将 unique 关键字参数设置为 True

要使用此方法,首先需要安装 StringGenerator 模块。下面的示例代码演示了如何使用 StringGenerator.render_list() 方法在 Python 中生成随机字符串。

from strgen import StringGenerator

StringGenerator("[\l\d]{10}").render_list(3, unique=True)

输出:

['m98xQHMlBI', 'V4O8hPMWfh', 'cBJk3XcGny']

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Python 中的字典数组或列表

发布时间:2023/12/18 浏览次数:125 分类:Python

本教程演示了如何在 Python 中创建字典数组。Python 中的字典以键值对的形式构成一组元素。列表可以在一个公共名称和特定索引下存储不同类型的元素。

检查索引是否存在于 Python 列表中

发布时间:2023/12/18 浏览次数:185 分类:Python

本教程演示了使用列表范围和 IndexError 异常检查 Python 列表中是否存在索引。我们将介绍两种使用列表范围和 IndexError 异常检查列表索引是否存在的方法。

在 Python 中对数字列表进行归一化

发布时间:2023/12/18 浏览次数:50 分类:Python

本教程演示如何归一化 python 中的数字列表。归一化意味着将给定的数据转换为另一个尺度。我们重新调整数据,使其介于两个值之间。

如何在 Python 中创建具有特定大小的列表

发布时间:2023/12/18 浏览次数:178 分类:Python

本教程介绍了如何在 Python 中创建具有特定大小的列表。当程序员提前知道元素数量时,为列表或数组预分配存储空间是程序员经常用地方式。

在 Python 中的列表中删除多个元素

发布时间:2023/12/18 浏览次数:188 分类:Python

我们可以使用 if...else 控制语句、列表推导式、列表切片和 for 循环从 Python 中的列表中删除多个元素。要从 Python 列表中删除多个值,我们可以删除列表的实际值或要从列表中删除的值的索引。

如何在 Python 中获取一个列表的平均值

发布时间:2023/12/18 浏览次数:142 分类:Python

本教程将演示如何在 Python 中使用 statistics.mean 获得一个给定列表的平均值。本教程介绍了如何在 Python 中计算一个列表的平均数。

在 Python 中将字典转换为列表

发布时间:2023/12/18 浏览次数:54 分类:Python

本文介绍如何在 Python 中将字典转换为列表。Python 中的字典是由键-值对组合而成。在 key 的帮助下,你可以访问字典里面的值。

从 Python 列表中删除某元素的所有出现

发布时间:2023/12/18 浏览次数:163 分类:Python

在本文中,我们将看到如何在 Python 中从一个 List 中删除一个元素的所有出现。在 Python 中,列表允许同一个元素多次出现。即使一个元素的值可能与其他元素相同

在Python中将十六进制转换为字节

发布时间:2023/12/18 浏览次数:153 分类:Python

本教程介绍了如何在Python中将十六进制值转换为字节文字。十六进制,通常简写为hex,使用16个符号(0-9,a-f)表示值,与十进制的10个符号形成对比。例如,十进制中的1000在十六进制中是3E8。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便