05-python 学习第五天-简单验证码
通过python 随机数可以制作简单的验证码。
1.0版本来了,这验证码,只有一个码,功能虽然达不到,逻辑还是准确的,目前还不能算是验证码,但是我们会继续完善的。
import random # 导入随机数函数random
checkcode = '' #设定一个空变量,作为验证码 for i in range(4): #循环0到4之间的数字
checkcode +=str(i) #每次的数字变成字符串 print(checkcode) #输出出来
运行结果:0123(每次都是这个固定数字)呵呵
1.1版本来了,我们用随机数了,加一句代码可以随机生成了。
import random # 导入随机数函数random
checkcode = '' #设定一个空变量,作为验证码 for i in range(4):
current = random.randint(0,9) #每次循环随机数吧
checkcode +=str(current) print(checkcode) #输出出来
结果是:6151 四位数字的验证码就这样诞生了。
1.2的版本来了,同学说纯数字太不靠谱了,级别太低,不安全,能不能添加字母呢? 我说:那不简单嘛,添加字母不就行了嘛。
# Author:Dwdar
import random # 导入随机数函数random checkcode = '' # 设定一个空变量,作为验证码 for i in range(4):
# 添加字母
current = random.randrange(0, 4) # 猜一猜,我生成的随机数会不会和i 相等呢?
if current == i: # 如果猜中了
temp = chr(random.randint(65, 90)) # 那么就找出ASCII 码中的任意输入,把它转换成字母放到temp存起来。
# 添加数字
else:
temp = random.randint(0, 9) # 如果没有菜刀,就用原来的0到9之间的数字,放到temp存起来
checkcode += str(temp) # 把存起来的temp用起来就能生成数字或字母组合的一组数据了。 print(checkcode)
结果是:24G4,可以生成字母和数字组合的(有时会纯数字和纯字母)了,这下可以算是比较好的验证码了。如果你想做成6位数的,只要把两处的4改成6就可以。
1.3 版本来了,6位数数字字母组合验证码。
# Author:Dwdar
import random # 导入随机数函数random checkcode = '' # 设定一个空变量,作为验证码 for i in range(6):
# 添加字母
current = random.randrange(0, 6) # 猜一猜,我生成的随机数会不会和i 相等呢?
if current == i: # 如果猜中了
temp = chr(random.randint(65, 90)) # 那么就找出ASCII 码中的任意输入,把它转换成字母放到temp存起来。
# 添加数字
else:
temp = random.randint(0, 9) # 如果没有菜刀,就用原来的0到9之间的数字,放到temp存起来
checkcode += str(temp) # 把存起来的temp用起来就能生成数字或字母组合的一组数据了。 print(checkcode)
结果是:889152
05-python 学习第五天-简单验证码的更多相关文章
- python学习第五次笔记
python学习第五次笔记 列表的缺点 1.列表可以存储大量的数据类型,但是如果数据量大的话,他的查询速度比较慢. 2.列表只能按照顺序存储,数据与数据之间关联性不强 数据类型划分 数据类型:可变数据 ...
- Python学习第五堂课
Python学习第五堂课推荐电影:华尔街之狼 被拯救的姜哥 阿甘正传 辛德勒的名单 肖申克的救赎 上帝之城 焦土之城 绝美之城 #上节内容: 变量 if else 注释 # ""& ...
- 05 python学习笔记-常用内置函数(五)
1.sorted() 函数对所有可迭代的对象进行排序(默认升序)操作 sort 与 sorted 区别: sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作. l ...
- python模块——random模块(简单验证码实现)
实现一个简单的验证码生成器 #!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = "loki" # Usage: 验证 ...
- python学习笔记(五):装饰器、生成器、内置函数、json
一.装饰器 装饰器,这个器就是函数的意思,连起来,就是装饰函数,装饰器本身也是一个函数,它的作用是用来给其他函数添加新功能,比如说,我以前写了很多代码,系统已经上线了,但是性能比较不好,现在想把程序里 ...
- python 验证码识别示例(五) 简单验证码识别
今天介绍一个简单验证的识别. 主要是标准的格式,没有扭曲和变现.就用 pytesseract 去识别一下. 验证码地址:http://wscx.gjxfj.gov.cn/zfp/webroot/xfs ...
- python学习笔记五 模块上(基础篇)
模块学习 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...
- python学习笔记五 模块下(基础篇)
shevle 模块 扩展pickle模块... 1.潜在的陷进 >>> import shelve>>> s = shelve.open("nb" ...
- python学习笔记(3)--turtle简单绘制
参考:大学生mooc 北京理工大学的python程序与设计课程 蟒蛇绘制代码如下: #pythonDraw.py import turtle turtle.setup(650,350,200,200) ...
随机推荐
- SpringMVC向前台传输 JSON数据
所需Jar包jackson-core.jackson-annotations和jackson-databind 在MVC的配置文件中加入<mvc:annotation-driven>< ...
- Java 基础 - 装箱, 拆箱
总结 1-装箱过程是通过调用包装器的valueOf方法实现的,而拆箱过程是通过调用包装器的 xxxValue方法实现的.(xxx代表对应的基本数据类型).例如:在装箱的时候自动调用的是Integer的 ...
- [JZOJ3302] 【集训队互测2013】供电网络
题目 题目大意 给你一个有向图,每个点开始有一定的水量(可能为负数),可以通过边流到其它点. 每条边的流量是有上下界的. 每个点的水量可以增加或减少(从外界补充或泄出到外界),但是需要费用,和增加(减 ...
- BZOJ 2660 (BJOI 2012) 最多的方案
Description 第二关和很出名的斐波那契数列有关,地球上的OIer都知道:F1=1, F2=2, Fi = Fi-1 + Fi-2,每一项都可以称为斐波那契数.现在给一个正整数N,它可以写成一 ...
- eclipse配置外部工具利用javah编译生成头文件
1. 点击eclipse工具栏外部工具按钮,打开配置外部工具 2. 新建一个启动配置,起名为Generate C and C++ Header File,按照下图配置好相应的参数 3. 运行该工具时, ...
- Http学习(三)
HTTP的问题: 通信使用明文,可能会遭到窃听:HTTP本身不具备加密功能,根据TCP/IP协议工作的线路上可能会遭到窃听,即使通信内容已经加密,也会被看到 通信加密:通过SSL(Secure Soc ...
- Python collection模块与深浅拷贝
collection模块是对Python的通用内置容器:字典.列表.元组和集合的扩展,它包含一些专业的容器数据类型: Counter(计数器):dict子类,用于计算可哈希性对象的个数. Ordere ...
- Java程序员必备的10个大数据框架!
作者:java妞妞 blog.csdn.net/javaniuniu/article/details/71250316 当今IT开发人员面对的最大挑战就是复杂性,硬件越来越复杂,OS越来越复杂,编程语 ...
- 初识OpenCV-Python - 008: 形态转换
本节学习了图片的形态转换,即利用函数和图像的前景色和背景色去侵蚀或者扩张图像图形. import cv2import numpy as npfrom matplotlib import pyplot ...
- 面试系列20 生产环境中的redis是怎么部署的
redis cluster,10台机器,5台机器部署了redis主实例,另外5台机器部署了redis的从实例,每个主实例挂了一个从实例,5个节点对外提供读写服务,每个节点的读写高峰qps可能可以达到每 ...