python之random模块 前言:今天学习python的random模块,random模块的主要作用是生成随机数,今天将会罗列random模块中常用的方法,以及使用random模块写一个生成4位随机验证码的小程序。 一、常用方法 二、生成四位随机验证码代码

python之random模块
前言:今天学习python的random模块,random模块的主要作用是生成随机数,今天将会罗列random模块中常用的方法,以及使用random模块写一个生成4位随机验证码的小程序。
一、常用方法
二、生成四位随机验证码代码

一、常用方法

#random()方法用来生成0到1之间的浮点随机数,其中包含0,不包含1
>>> random.random()
0.947487542149347
#randint()方法用来随机选取给定两个整数之间的数字,包含开头数字和结尾数字
>>> random.randint(1, 2)
1
#randrange()方法用来生成给定整数中的随机随机,其中包含起始位,顾头不顾尾(也可以加上步长)
>>> random.randrange(8)
7
#sample()方法用来从给定的序列(字符串、元组、列表)中随机选取n个元素
>>> random.sample((22,'csc','d','hh','dss','dh','sd9'), 2)
['dss', 'csc']
>>> random.sample('22kcsckdhhdsskdhsd90', 2)
['2', 'k']
>>> random.sample(['sdjsjfdsfjdsf', 'dd', '2'], 2)
['dd', 'sdjsjfdsfjdsf']
#uniform()方法用来生成给定范围内的一个浮点数,其中包含起始位,不包含结束位,是random()方法的升级版
>>> random.uniform(1, 10192.1)
1862.1806639675406
#shuffle()方法用来将序列(由于集合和字符串顺序固定,这里是指列表)进行排序,shuffle无返回值,返回的是None
>>> list = [1, 'qd', 'qjx', 'jx']
>>> random.shuffle(list)
>>> list
['qjx', 1, 'jx', 'qd']
#choice()方法用于随机选取序列中的一个元素
>>> str = 'djasjasdashdkaoiucdm'
>>> random.choice(str)
'u'
>>> random.choice(str)
'j'
>>> list = [1, 'qinjis', 'jhu', 'jx']
>>> random.choice(list)
1
>>> random.choice(list)
'jx'
>>> set = (0, 'k', 'ss', 'eee')
>>> random.choice(set)
0
>>> random.choice(set)
'k'

二、生成四位随机验证码代码

#!/usr/bin/python3
#author:qinjiaxi
import random
#随机4位验证码功能
check_code = ''
for i in range(4):
    current = random.randrange(4)
    if i == current:
        tmp = chr(random.randint(65, 90))
    else:
        tmp = random.randint(0, 9)
    check_code += str(tmp)
print(check_code)



result:
qinlang@qinlang-PC:~$ python3 ~/Desktop/check_code.py 
AM24
qinlang@qinlang-PC:~$ python3 ~/Desktop/check_code.py 
D3N2
qinlang@qinlang-PC:~$ python3 ~/Desktop/check_code.py 
G023
qinlang@qinlang-PC:~$ python3 ~/Desktop/check_code.py 
0737
qinlang@qinlang-PC:~$ python3 ~/Desktop/check_code.py 
6119