博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
day5-random模块
阅读量:6514 次
发布时间:2019-06-24

本文共 1880 字,大约阅读时间需要 6 分钟。

一、简述

  我们经常会使用一些随机数,或者需要写一些随机数的代码,今天我们就来整理随机数模块:random模块

二、random模块

1、random.random()

功能:随机返回一个小数

>>> import random>>> random.random()0.14090974546903268  #随机返回一个小数

2、random.randint(a,b)

功能:随机返回a到b之间任意一个数,包括b

>>> import random>>> random.randint(1,5) 5   #可以返回5>>> random.randint(1,5)2

3、random.randrange(start, stop=None, step=1)

功能:随机返回start到stop,但是不包括stop值

>>> import random>>> random.randrange(5)  #不能随机返回54>>> random.randrange(5)1

4、random.sample(population, k)

功能:从population中随机获取k个值,以列表的形式返回

>>> import random>>> random.sample(range(10),3)  #从0-9返回3个随机数[3, 1, 0]>>> random.sample('abcdefghi',3)  #从'abcdefghi'中返回3个字符['a', 'h', 'b']

三、string模块

1、string.ascii_letters

功能:返回大小写字母的字符串

>>> import string >>> string.ascii_letters'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'  #返回大小写字母字符串

2、string.ascii_lowercase

功能:返回小写字母的字符串

>>> import string >>> string.ascii_lowercase'abcdefghijklmnopqrstuvwxyz'  #返回小写字母的字符串

3、string.ascii_uppercase

功能:返回大写字母的字符串

>>> import string >>> string.ascii_uppercase'ABCDEFGHIJKLMNOPQRSTUVWXYZ'  #返回大写字母的字符串

4string.digits

功能:返回0-9数字的字符串

>>> import string >>> string.digits'0123456789'    #返回0-9数字的字符串

5、string.punctuation

功能:返回所有特殊字符,并以字符串形式返回

>>> import string>>> string.punctuation'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'  #返回所有特殊字符,并以字符串的形式返回

四、生成随机数

1、用random和string模块生成随机数

>>> import random,string>>> str_source = string.ascii_lowercase + string.digits  #大写字母字符和0-9数字字符串拼接>>> random.sample(str_source,6)    #取6个随机字符['f', '1', 'a', 'm', 'j', 'h']>>> ''.join(random.sample(str_source,6))  #生成一个随机数字符串'f84bsj'

2、程序实现

import randomcheckcode = ''for i in range(4):    current = random.randrange(0,4)    if current != i:   #如果当前的loop  i不等于随机数,就取出65-90中的随机字符        temp = chr(random.randint(65,90))    else:        temp = random.randint(0,9)    checkcode += str(temp)print(checkcode)

 

转载于:https://www.cnblogs.com/zhangqigao/articles/6650848.html

你可能感兴趣的文章
win7 下硬盘安装Redhat7
查看>>
Redis 分布式锁的正确实现方式
查看>>
mysqldump 备份命令使用中的一些经验总结
查看>>
程序猿知道英语词汇
查看>>
数据存储(两)--SAX发动机XML记忆(附Demo)
查看>>
谈谈SQL 语句的优化技术
查看>>
ecshop如何判断缓存文件是否能更新
查看>>
javascript于boolean类型转换,运营商&amp;&amp;和|| 返回值
查看>>
深入分析面向对象中的封装作用
查看>>
深刻理解Python中的元类(metaclass)
查看>>
Java编程的逻辑 (44) - 剖析TreeSet
查看>>
address元素
查看>>
Android View体系(六)从源码解析Activity的构成
查看>>
fnmatch源码阅读
查看>>
U9249 【模板】BSGS
查看>>
单片机小白学步系列(九) 用万用焊板搭建实验电路
查看>>
Tomcat PK Resin
查看>>
(转)全文检索技术学习(三)——Lucene支持中文分词
查看>>
Node.js+Koa开发微信公众号个人笔记(一)准备工作
查看>>
Android 图片缓存处理
查看>>