Python常用模块-随机数模块(random)

               Python常用模块-随机数模块(random)

                                      作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

 

 

 

一.常用方法举例

 1 #!/usr/bin/env python
 2 #_*_conding:utf-8_*_
 3 #@author :yinzhengjie
 4 #blog:http://www.cnblogs.com/yinzhengjie
 5 
 6 import random
 7 from  string import ascii_lowercase
 8 
 9 
10 import random
11 
12 #返回1-5之间的整数,即取值[1,5]的int类型。
13 print(random.randint(1,5))
14 
15 #从非空序列的元素中随机挑选一个元素
16 print(random.choice(range(10)))
17 
18 #取值[1,3)的int类型。
19 print(random.randrange(1,3))
20 
21 #从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1
22 print(random.randrange(1,9,2))
23 
24 num_list = [1,2,3,4,5]
25 print(num_list)
26 
27 #就地打乱列表元素
28 random.shuffle(num_list)
29 print(num_list)
30 
31 #从样本空间或总体(序列或者集合类型)中随机取出k个不同的元素,返回一个新的列表
32 print(random.sample(['a', 'b', 'c', 'd','e','f','g'], 3))
33 print(random.sample(['a', 'a'], 2))
34 
35 #和sample功能类似,只不过choices方法可以随机选择1-10个不同的元素(返回的个数在咱们的规定范围内)
36 print("".join(random.choices(ascii_lowercase,k=random.randint(1,10))))
37 
38 #取值(0,1)float类型。
39 print(random.random())
40 
41 names = ["yinzhengjie","尹正杰","yzj","北京","西安"]
42 
43 #从给定的列表中随机取一个数字。
44 print(random.choice(names))
45 
46 # 从给定的列表中随机取3个元素。
47 print(random.sample(names,3))
48 
49 #取值(1,3)的float类型。
50 print(random.uniform(1,3))
3
4
2
7
[1, 2, 3, 4, 5]
[3, 2, 5, 4, 1]
['c', 'g', 'f']
['a', 'a']
ajjwuyuftf
0.0900107743331563
北京
['尹正杰', 'yinzhengjie', '北京']
1.695671638754336
以上代码执行结果

 

.验证码案例

 1 #!/usr/bin/env python
 2 #_*_coding:utf-8_*_
 3 #@author :yinzhengjie
 4 #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/
 5 #EMAIL:y1053419035@qq.com
 6 
 7 import random
 8 
 9 def ValdateCode(number=5):
10     res = ""
11     for i in range(number):
12         num = random.randint(1, 9)
13         string = chr(random.randint(97,122))
14         s = random.choice([str(num),string])
15         res += s
16     return res
17 
18 res = ValdateCode(10)
19 print(res)
20 
21 
22 
23 #以上代码执行结果如下:
24 43jh12l2i5

 

posted @ 2018-03-05 22:49  尹正杰  阅读(318)  评论(0编辑  收藏  举报