随机数生成(random 、faker介绍)

随机数生成(random 、faker介绍)

在做python自动化测试过程中,会出现一种场景,就是我们要生成一个数据库中没有的数值,也许是手机号码,也可能是邮箱、地址等等。接下来,介绍一下一些生成随机数、随机名称的方法,请往下看把~~

random

一、random简介:

random ,是Python标准库中的random函数,可用于生成随机的数字、字母、字符串。因为是python中的标准库,所有在使用时,需要导入,即:import random,random() 方法返回随机生成的一个实数,它在[0,1)范围内。

二、random操作的简单介绍
  • random.random()
    ———— > 指的是生成一个随机的浮点数,范围是在0.0~1.0之间 ,注意两个都为小写字母开头的random;

  • random.choice([a,b,c])
    ———— > 指的是从序列中随机选中一个随机元素,里面多接的是一个列表;
    如:random.choice([‘1’,‘3’,‘5’,‘7’,‘9’]) ;

  • random.randint(a,b)
    ———— > 指的是从在范围内,随机获取一个整数,a为下限,b为上限;
    如:random.randint(0,9),即为随机生成0 - 9的随机数;

  • random.randrange([start], stop [,step])
    ———— > 指的是生成一个:start:开始数值,stop:结束数值,step:步长,默认为1,可以不写的随机整数,
    如:random.randrange(0,10,2) ,即为: 生成从0到100的间隔为2的一个随机整数

三、random操作手机号码生成

通过random.choice 和 random.randint()组合生成一手机号码;

import random

phone = '1'+ random.choice(['3','5','7','8','9'])
for i in range(9):        # 循环9次
    num = random.randint(0,9)      # 从0-9中随机生成数字
    phone += str(num)       # phone生成为字符串,故num需转化为str类型
print(phone)

手机号码生成简单封装 及 调用:

import random

def generate_new_phone():
    phone = '1'+ random.choice(['3','5','7','8','9'])
    for i in range(9):      # 循环9次
        num = random.randint(0,9)      # 从0-9中随机生成数字
        phone += str(num)    # phone生成为字符串,故num需转化为str类型
    return phone

if __name__ == '__main__':
    re = generate_new_phone()
    print(re)

注:另外关于random函数详细介绍,可查看菜鸟教程:https://www.runoob.com/python/func-number-random.html

Faker

一、Faker库简单介绍:

Faker是python一个生成某一数据更简便的第三方库,通过简单的导入模块,可直接快速的生成想要的数据,比random会更实用些。

二、Faker库简单操作:
  • 安装
    ———— > pip install faker

  • 引用
    ———— > from faker import Faker
    ———— > 初始化:faker=Faker(locale=‘zh_CN’) # 默认是en_US

  • 常用的faker的函数
    faker.name # 生成姓名
    faker.address() # 生成地址
    faker.phone_number() # 生成手机号码
    faker.email() # 生成邮箱
    f.date() # 生成随机日期

三、Faker库函数封装
  • 通过Faker封装,随机生成一邮箱
from faker import Faker

def generate_new_email():
    faker = Faker('zh_CN')
    email = faker.email()
    return email

if __name__ == '__main__':
    re = generate_new_email()
    print(re)
  • 通过Faker封装,随机生成一手机号码
from faker import Faker

def generate_new_phone():
    faker = Faker('zh_CN')
    phone = faker.phone_number()
    return phone

if __name__ == '__main__':
    re = generate_new_phone()
    print(re)

注:另外关于Faker函数详细介绍,可查看:https://blog.csdn.net/mall_lucy/article/details/108655317

————
最后鸡汤记录:永远不知道下一秒会发生什么,不要过于患得患失把,保持一个相对平和的心态,凡事看开点,一些都会更美好,fighting!!,,继续前进~~~


版权声明:本文为m0_53628535原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。