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

yipeiwu_com5年前Python基础

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

1、random模块基础的方法

#!/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位纯数字验证码

#!/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位字符串验证码(数字与字符都有)

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

PS:这里再提供几款相关工具供大家参考使用:

在线随机数生成工具:
http://tools.jb51.net/aideddesign/rnd_num

在线随机生成个人信息数据工具:
http://tools.jb51.net/aideddesign/rnd_userinfo

在线随机字符/随机密码生成工具:
http://tools.jb51.net/aideddesign/rnd_password

在线随机数字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

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

相关文章

python生成器的使用方法

什么是生成器?生成器是一个包含了特殊关键字yield的函数。当被调用的时候,生成器函数返回一个生成器。可以使用send,throw,close方法让生成器和外界交互。 生成器也是迭代器,...

Python异常学习笔记

异常(exceptions)是Python中一种非常重要的类型,它和语法错误不同,是在程序运行期间引发的错误。Python中内置了很多异常,如IOError,NameError,Keyb...

python验证码识别教程之利用投影法、连通域法分割图片

python验证码识别教程之利用投影法、连通域法分割图片

前言 今天这篇文章主要记录一下如何切分验证码,用到的主要库就是Pillow和Linux下的图像处理工具GIMP。首先假设一个固定位置和宽度、无粘连、无干扰的例子学习一下如何使用Pillo...

Python序列操作之进阶篇

简介 Python 的序列(sequence)通常指一个可迭代的容器,容器中可以存放任意类型的元素。列表和元组这两种数据类型是最常被用到的序列,python内建序列有六种,除了刚刚有说过...

TensorFlow基于MNIST数据集实现车牌识别(初步演示版)

TensorFlow基于MNIST数据集实现车牌识别(初步演示版)

在前几天写的一篇博文《如何从TensorFlow的mnist数据集导出手写体数字图片》中,我们介绍了如何通过TensorFlow将mnist手写体数字集导出到本地保存为bmp文件。 车牌...