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

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

服务器之家 - 脚本之家 - Python - Python3.5内置模块之random模块用法实例分析

Python3.5内置模块之random模块用法实例分析

2021-06-20 00:42loveliuzz Python

这篇文章主要介绍了Python3.5内置模块之random模块用法,结合实例形式分析了Python3.5 random模块生成随机数与随机字符串相关操作技巧,需要的朋友可以参考下

本文实例讲述了python3.5内置模块之random模块用法。分享给大家供大家参考,具体如下:

1、random模块基础的方法

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# author:zhengzhengliu
import random
print(random.random())     #随机产生[0,1)之间的浮点值
print(random.randint(1,6))   #随机生成指定范围[a,b]的整数
print(random.randrange(1,3))  #随机生成指定范围[a,b)的整数
print(random.randrange(0,101,2)) ##随机生成指定范围[a,b)的指定步长的数(2--偶数)
print(random.choice("hello")) #随机生成指定字符串中的元素
print(random.choice([1,2,3,4])) #随机生成指定列表中的元素
print(random.choice(("abc","123","liu"))) #随机生成指定元组中的元素
print(random.sample("hello",3))  #随机生成指定序列中的指定个数的元素
print(random.uniform(1,10))   #随机生成指定区间的浮点数
#洗牌
items = [1,2,3,4,5,6,7,8,9,0]
print("洗牌前:",items)
random.shuffle(items)
print("洗牌后:",items)

运行结果:

0.1894544287915626
2
1
74
l
2
liu
['l', 'h', 'o']
1.2919229440123967
洗牌前: [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
洗牌后: [6, 9, 2, 7, 1, 3, 8, 5, 4, 0]

2、random模块中方法的实际应用——生成随机验证码

(1)随机生成4位纯数字验证码

?
1
2
3
4
5
6
7
8
9
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# author:zhengzhengliu
import random
check_code = ''  #最终生成的验证码
for i in range(4):    #4位长的纯数字验证码
  cur = random.randint(0,9)
  check_code += str(cur)
print(check_code)

运行结果:

0671

(2)随机生成4位字符串验证码(数字与字符都有)

?
1
2
3
4
5
6
7
8
9
10
11
12
import random
check_code = ''
for i in range(4):
  cur = random.randrange(0,4#随机猜的范围,与循环次数相等
  #字母
  if cur == i:
    tmp = chr(random.randint(65,90))  #随机取一个字母
  #数字
  else:
    tmp = random.randint(0,9)
  check_code += str(tmp)
print(check_code)

运行结果:

39hn

希望本文所述对大家python程序设计有所帮助。

原文链接:https://blog.csdn.net/loveliuzz/article/details/78127747

延伸 · 阅读

精彩推荐