Python生成随机数字和字符详情

 更新时间:2022年07月28日 17:16:25   作者:程序媛_  
这篇文章主要介绍了Python生成随机数字和字符详情,random是python自带库,使用前导入import random即可,更多相关内容需要的朋友可以参考一下

random库

random是python自带库,使用前导入 import random 即可,无需安装。

举例:

import random

print(random.random())	# 0.8564557389763434
print(random.uniform(0, 100))	# 78.19630268831175
print(random.randint(0, 100))	# 45

print(random.choice('12345'))	# 4
print(random.choice([1,2,3,4,5]))	# 1
print(random.choice((1,2,3,4,5)))	# 5

print(random.sample('12345', 3))	# ['1', '5', '2']
print(random.sample([1,2,3,4,5], 3))	# [5, 4, 1]
print(random.sample((1,2,3,4,5), 3))	# [4, 5, 1]

list = [1, 2, 3, 4, 5]
random.shuffle(list)
print(list)	# [3, 5, 4, 1, 2]

print(random.randrange(0,20,5))	# 10

生成一个指定长度的随机字符串

使用random.randint(0,n)

思路:定义一个基础字符序列,要产生多长的字符串就循环调用多少次random.randint(0,n),n=基础字符序列的长度,在这个序列中选择随机位置的字符,然后进行拼接返回。

import random
import string

def generate_random_str(randomlength=16):
  """
  生成一个指定长度的随机字符串
  """
  random_str =''
    # 使用string库中的字母、数字和标点符号组成一个基础字符序列
  base_str = string.ascii_letters + string.digits + string.punctuation
  length =len(base_str) -1
  for i in range(randomlength):
    random_str +=base_str[random.randint(0, length)]
  return random_str

print(generate_random_str(30))	# T`^7:C?z4h0qd!JpO:MFNB2_GL>dXm

使用random.choice()随机选择

import random
import string

def generate_random_str(randomlength=16):
    """
      生成一个指定长度的随机字符串
    """
    # 使用string库中的字母、数字和标点符号拼接程序列
    str_list = [random.choice(string.ascii_letters + string.digits + string.punctuation) for i in range(randomlength)]
    random_str = ''.join(str_list)
    return random_str
print(generate_random_str(30))	# ')8D@Bu&\1ltf!}HUcI-.;^>Vy[n|V

使用random.simple()随机选择

import random
import string

def generate_random_str(randomlength=16):
    """
    生成一个指定长度的随机字符串
    """
    # 使用string库中的字母、数字和标点符号组成一个基础字符序列
    base_str = string.ascii_letters + string.digits + string.punctuation
    str_lst = random.sample(base_str, randomlength)	#randomlength<=lenth(base_str)
    random_str = ''.join(str_lst)
    return random_str

Faker库

使用Faker库可生成各种各样的伪数据(姓名、地址、邮箱、电话、密码、一段文字、一句话等)。
安装:pip install faker
导入:from faker import Faker

示例:

from faker import Faker
fk = Faker(locale='zh-Cn')

# 姓名
print(fk.name())	# 刘娜
# 身份证
print(fk.ssn())		# 141022195412020845
# 手机号
print(fk.phone_number())	# 18226186826
# 邮箱
print(fk.email())	# zoujie@example.org

个人信息类

数字类

文本、加密类

日期类

地理信息类

from faker import Faker
fk = Faker(locale='zh-Cn')

# 从[0,9]中随机获取7位数字(可重复)
print([fk.random_digit() for i in range(7)])	# [2, 0, 7, 8, 2, 3, 2]
# 从[0,9]中随机获取7位数字(不可重复)
print([fk.unique.random_digit() for i in range(7)])		# [4, 9, 3, 6, 8, 5, 2]

到此这篇关于Python生成随机数字和字符详情的文章就介绍到这了,更多相关Python生成随机数字内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 在Windows中定时执行Python脚本的详细教程

    在Windows中定时执行Python脚本的详细教程

    在Windows系统中,定时执行Python脚本是一个常见需求,特别是在需要自动化数据处理、监控任务或周期性维护等场景中,本文将结合实际案例,详细介绍如何在Windows中通过任务计划程序(Task Scheduler)来实现定时执行Python脚本的功能,需要的朋友可以参考下
    2024-08-08
  • python中使用input()函数获取用户输入值方式

    python中使用input()函数获取用户输入值方式

    这篇文章主要介绍了python中使用input()函数获取用户输入值方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • python模块导入的细节详解

    python模块导入的细节详解

    这篇文章主要给大家介绍了关于python模块导入细节的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • Python数据正态性检验实现过程

    Python数据正态性检验实现过程

    这篇文章主要介绍了Python数据正态性检验实现过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • 深入理解Python 关于supper 的 用法和原理

    深入理解Python 关于supper 的 用法和原理

    这篇文章主要介绍了Python 关于supper 的 用法和原理分析,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2018-02-02
  • Django框架之中间件MiddleWare的实现

    Django框架之中间件MiddleWare的实现

    这篇文章主要介绍了Django框架之中间件MiddleWare的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Python使用FTP上传文件的实现示例

    Python使用FTP上传文件的实现示例

    本文主要介绍了Python使用FTP上传文件的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • 如何利用Python动态展示排序算法

    如何利用Python动态展示排序算法

    Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,能够简单、有效地实现面向对象编程,下面这篇文章主要给大家介绍了关于如何利用Python动态展示排序算法的相关资料,需要的朋友可以参考下
    2021-10-10
  • Python+requests+unittest执行接口自动化测试详情

    Python+requests+unittest执行接口自动化测试详情

    这篇文章主要介绍了Python+requests+unittest执行接口自动化测试详情,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-09-09
  • 基于Tensorflow一维卷积用法详解

    基于Tensorflow一维卷积用法详解

    这篇文章主要介绍了基于Tensorflow一维卷积用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05

最新评论