01 random() 生成随机0-1内浮点数

random.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0 小数点后面会有16位~17位的浮点数

  1. import random
  2. a = random.random() # 这个方法是不用传参数的
  3. print(a)
  4. =====================打印log
  5. 0.16300972306778239

02 uniform() 生成随机范围内浮点数

random.uniform的函数原型为:random.uniform(a, b),用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果a > b,则生成的随机数n: b <= n <= a。如果 a <b, 则 a <= n <= b。

  1. import random
  2. print('uniform 1 : ',random.uniform(2,5))
  3. print('uniform 2 : ',random.uniform(6,10))
  4. =====================打印log
  5. uniform 1 : 4.0234837350902115
  6. uniform 2 : 8.852011430324112

03 randint() 生成随机范围内整数

random.randint()的函数原型为:random.randint(a, b),用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n: a <= n <= b,
注意: 下限必须小于上限

  1. import random
  2. print('randint 1 : ',random.randint(1,3))
  3. print('randint 2 : ',random.randint(3,4))
  4. =====================打印log
  5. randint 1 : 2
  6. randint 2 : 4

04 randrange() 生成范围内递增随机整数

从指定范围内,按指定基数递增的集合中 获取一个随机数
如:random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, … 96, 98]序列中获取一个随机数。random.randrange(10, 100, 2)在结果上与 random.choice(range(10, 100, 2) 等效。

  1. import random
  2. print('randrange 1 : ', random.randrange(10, 100, 2)) # 10 12 14 16 18 20....
  3. print('randrange 2 : ', random.randrange(1, 10, 3)) # 1 3 6 9 从这个序列中随机取一个数
  4. =====================打印log
  5. randrange 1 : 78
  6. randrange 2 : 1

05 choice() 从序列中获取一个随机元素

从序列中获取一个随机元素, 泛指一系列的类型。list, tuple, 字符串 都可以

  1. import random
  2. print('choice 1 : ', random.choice(['a', 'b', 'c', 'd'])) # list(序列)类型
  3. print('choice 2 : ', random.choice('zbcdefg')) # str类型
  4. print('choice 3 : ', random.choice((10,20,30,40))) # tuple(元祖)类型
  5. =====================打印log
  6. choice 1 : d
  7. choice 2 : e
  8. choice 3 : 40

06 shuffle() 打乱序列

用于将一个列表中的元素打乱。shuffle() 这个方法不带返回, 直接修改了原始的 list序列

  1. import random
  2. list_shuffle = [1,2,3,4,5,6,7,8,9]
  3. random.shuffle(list_shuffle)
  4. print('list_shuffle 1 : ', list_shuffle)
  5. =====================打印log
  6. list_shuffle 1 : [7, 5, 1, 9, 6, 3, 4, 8, 2]

07 sample() 取序列随机片段长度

从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列。

  1. import random
  2. list_sample = [1,2,3,4,5,6,7,8,9]
  3. print('sample 1 : ', random.sample(list_sample,5)) # 随机取序列中的 5 个数返回给我, 但不修改原始序列
  4. print(list_sample)
  5. =====================打印log
  6. sample 1 : [6, 7, 5, 3, 1]
  7. [1, 2, 3, 4, 5, 6, 7, 8, 9]