开发者

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

开发者 https://www.devze.com 2022-12-10 13:43 出处:网络 作者: 搬砖,赞路费
目录前言一 random库介绍二 基本随机函数三 扩展随机函数1. randint()2. uniform()3. randrange()4. choice()5. shuffle()6. sample()四 实例(动态金额值)总结前言
目录
  • 前言
  • 一 random库介绍
  • 二 基本随机函数
  • 三 扩展随机函数
    • 1. randint()
    • 2. uniform()
    • 3. randrange()
    • 4. choice()
    • 5. shuffle()
    • 6. sample()
  • 四 实例(动态金额值)
    • 总结

      前言

      在进行接口测试时,有些接口字段在不需要测试的时候往往是被写死的,但是你不能保证它就不会出现问题,所以在平时测试的时候就需要覆盖各种情况,这时候就可以为此专门写一个函数或者类来实现字段动态值了。由于我们组的自动化脚本里面的金额字段是固定的,现在需要改成动态值,我用的是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_nuGtGeWupSVm1 = 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.rwww.cppcns.comandrange(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 = 'abcd编程客栈fg'
      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_a编程客栈mount = random.sample(编程客栈randomList, 1)[0]
          print(randomList)
          return random_amount
      #函数调用
      random_amount = get_random_amount()
      print(random_amount)
      

      测试结果如下

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

      总结

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

      0

      精彩评论

      暂无评论...
      验证码 换一张
      取 消

      关注公众号