脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python之random库的常用函数有哪些

Python之random库的常用函数有哪些

2022-09-25 11:46搬砖,赞路费 Python

这篇文章主要为大家详细介绍了Python之random库的常用函数,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

前言

在进行接口测试时,有些接口字段在不需要测试的时候往往是被写死的,但是你不能保证它就不会出现问题,所以在平时测试的时候就需要覆盖各种情况,这时候就可以为此专门写一个函数或者类来实现字段动态值了。由于我们组的自动化脚本里面的金额字段是固定的,现在需要改成动态值,我用的是python的random库写的,现在来详细记录一下。

 

一 random库介绍

在python中,用于生成随机数的是random库。但random库生成的随机数是一种采用梅森旋转算法生成的伪随机数,不是真正的随机数,因为计算机是不能产生真正的随机数的。

random库是python的标准库,因此只要安装了python环境,基本就能使用random库,使用方法如下

import random

 

二 基本随机函数

random库中的随机数由两个基本随机函数产生,一个是seed()函数,一个是random()函数,如下

1. seed()

seed(a=None): 随机数种子函数,默认参数a等于当前系统时间。如果参数a值固定,则随之产生的随机数也会是同一个值。如下

import random
import time
random.seed(a=1)
ran_num1 = random.random()
ran_num3 = random.randint(1, 6)
print("我是第一次随机结果:")
print(ran_num1)
print(ran_num3)
time.sleep(3)
print("我是第二次随机结果:")
print(ran_num1)
print(ran_num3)

Python之random库的常用函数有哪些

从结果可以看出,当参数a的值确定时,产生的就不是随机数了。

2. random()

random(): 生成一个[0.0, 1.0)之间的随机小数

a = 0
while a < 10:
    num = random.random()
    a += 1
    print(num)

Python之random库的常用函数有哪些

 

三 扩展随机函数

由于基本随机函数不够用,所以又有了以下的扩展随机函数,如下。

 

1. randint()

randint(a, b): 生成一个[a, b]之间的随机整数

#randint
a = 0
while a < 5:
    num = random.randint(1, 5)
    a += 1
    print(num)

Python之random库的常用函数有哪些

 

2. uniform()

uniform(a, b): 生成一个[a, b]之间的随机小数

#uniform
a = 0
while a < 5:
    num = random.uniform(1, 7)
    a += 1
    print(num)

Python之random库的常用函数有哪些

 

3. randrange()

randrange(m,n[,k]): 生成一个[m,n)之间以k(默认为1)为步长的随机整数

#randrange
a = 0
while a < 5:
    num = random.randrange(1, 5)
    a += 1
    print(num)

Python之random库的常用函数有哪些

 

4. choice()

choice(seq): 从序列中随机选择一个数

#choice
a = 0
while a < 5:
    num = random.choice("abcd")
    a += 1
    print(num)

Python之random库的常用函数有哪些

 

5. shuffle()

shuffle(seq): 将列表元素顺序打乱,返回打乱后的列表

#shuffle
l = [1, 2, 3, 4]
a = 0
while a < 5:
    random.shuffle(l)
    a += 1
    print(l)

Python之random库的常用函数有哪些

 

6. sample()

sample(seq, n): 从指定的序列seq中,随机返回n个元素,以列表形式返回

#sample
s = "abcdfg"
a = 0
while a < 5:
    num = random.sample(s, 1)
    a += 1
    print(num)

Python之random库的常用函数有哪些

 

四 实例(动态金额值)

要求:返回一个动态金额值,金额范围:

1.0~1的一位小数,两位小数;

2.不超过100的整数;

3.1~100的一位小数,两位小数;(测试金额字段,会不会自动补全两位小数)

实现;

#测试金额字段,会不会自动补全两位小数
#实现金额字段动态值
import random
def get_random_amount():
    """
    实现金额字段动态值
    :return: random_amount
    """
    #小于1的一位小数,两位小数值
    amount1 = round(random.random(), 1)
    amount2 = round(random.random(), 2)
    #整数
    amount3 = random.randint(1, 100)
    #1~100的一位小数,两位小数值
    amount4 = round(random.uniform(1, 100), 1)
    amount5 = round(random.uniform(1, 100), 2)
    #从5个金额值中随机返回一个
    randomList = [amount1, amount2, amount3, amount4, amount5]
    random_amount = random.sample(randomList, 1)[0]
    print(randomList)
    return random_amount
#函数调用
random_amount = get_random_amount()
print(random_amount)

测试结果如下

Python之random库的常用函数有哪些

 

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注服务器之家的更多内容!  

原文链接:https://blog.csdn.net/qq_44690947/article/details/122710186

延伸 · 阅读

精彩推荐
  • Pythonpython从内存地址上加载python对象过程详解

    python从内存地址上加载python对象过程详解

    这篇文章主要介绍了python从内存地址上加载pythn对象过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋...

    potatso7452020-05-03
  • Pythonpython爬虫之代理ip正确使用方法实例

    python爬虫之代理ip正确使用方法实例

    在爬虫的过程中,我们经常会遇见很多网站采取了防爬虫技术,或者说因为自己采集网站信息的强度和采集速度太大,给对方服务器带去了太多的压力,下面这篇...

    昊昊该干饭了4812022-07-07
  • Python用TensorFlow实现戴明回归算法的示例

    用TensorFlow实现戴明回归算法的示例

    这篇文章主要介绍了用TensorFlow实现戴明回归算法的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    lilongsy10262021-02-08
  • Python浅谈tensorflow中张量的提取值和赋值

    浅谈tensorflow中张量的提取值和赋值

    今天小编就为大家分享一篇浅谈tensorflow中张量的提取值和赋值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 ...

    信道者22232020-04-12
  • PythonPython SSL证书验证问题解决方案

    Python SSL证书验证问题解决方案

    这篇文章主要介绍了Python SSL证书验证问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参...

    lucky849217352020-04-26
  • Pythonnumpy数据类型dtype转换实现

    numpy数据类型dtype转换实现

    这篇文章主要介绍了numpy数据类型dtype转换实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随...

    罗兵13292021-10-19
  • PythonPython实现的端口扫描功能示例

    Python实现的端口扫描功能示例

    这篇文章主要介绍了Python实现的端口扫描功能,涉及Python针对端口的连接、打开、关闭及线程相关操作技巧,需要的朋友可以参考下...

    chengqiuming13642021-01-29
  • Pythondjango使用LDAP验证的方法示例

    django使用LDAP验证的方法示例

    这篇文章主要介绍了django使用LDAP验证的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    爱做梦的鱼9552021-04-27