需求信息:

写一个判断登录的程序:
输入: username
password
最大错误次数是3次,输入3次都没有登录成功,提示错误次数达到上限
需要判断输入是否为空,什么也不输入,输入一个空格、n个空格都算空
登录成功,提示欢迎xxx,今天的日期是 xxx

可以用多个用户登录,选做(多个用户登录,每个用户的密码也不一样)

知识点:

1.循环方法while和for的结合使用;2.import使用time函数;3.字典的初步使用;4.break和continue的简单用法;

实现思路:

1.构建一个放置用户信息的字典(键值对储存用户的账号和密码)

   zhangmi={"wangdapang":"123456","wangerpang":"1234567","wangxiaopang":"7654321"}
2.使用for循环依次取出字典的数据
  for key,value in zhangmi.items():#items()遍历字典内容
3.使用input语句接收输入的需要判断的用户名和密码
   shuru_user = input("请输入用户名:")
shuru_pwd = input("请输入密码:")
4.对输入的值和从字典遍历出来的数据进行比较
  if shuru_user==key or shuru_pwd==value:
  aaaa+=1#计数器
  break#结束循环
  elif shuru_pwd!=value or shuru_user!=key:
  continue#用来跳出当次循环
5.外层循环控制校验和循环校验次数
while cccc<=3:
count += 1#校验次数的计数器
if count>3:
print("超过3次,你没有机会了!")
break
elif aaaa>=1:
print("欢迎" + key + "来到绿洲!现在时间"+sj)#sj是取用当前时间的变量
break
6.判断输入的值是否为空值
if shuru_user=="" or shuru_pwd=="":
print("账号或密码输入为空!")
continue
7.引入时间戳更改输出格式
import time,datetime
sj=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) 完成 完整代码:(比较笨的思路)
import time,datetime
sj=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
zhangmi={"wangdapang":"123456","wangerpang":"1234567","wangxiaopang":"7654321"}
count=0
cccc=0
aaaa=0
while cccc<=3:
count += 1
if count>3:
print("超过3次,你没有机会了!")
break
elif aaaa>=1:
print("欢迎" + key + "来到绿洲!现在时间"+sj)
break
shuru_user = input("请输入用户名:")
shuru_pwd = input("请输入密码:")
if shuru_user=="" or shuru_pwd=="":
print("账号或密码输入为空!")
continue
for key,value in zhangmi.items():
# if shuru_user==key:
# print("duiduidui")
if shuru_user==key or shuru_pwd==value:
aaaa+=1
break
elif shuru_pwd!=value or shuru_user!=key:
continue
												

自动化测试(二)如何用python写一个用户登陆功能的更多相关文章

  1. 用java写一个用户登陆界面

    一.课堂测试源代码及其结果截图 用java的swing写一个用户登录界面,采用网格布局.源代码如下: /** * */package LiuLijia; import java.awt.CardLay ...

  2. 自动化测试(三)如何用python写一个函数,这个函数的功能是,传入一个数字,产生N条邮箱,产生的邮箱不能重复。

    写一个函数,这个函数的功能是,传入一个数字,产生N条邮箱,产生的邮箱不能重复.邮箱前面的长度是6-12之间,产生的邮箱必须包含大写字母.小写字母.数字和特殊字符 和上一期一样 代码中间有段比较混沌 有 ...

  3. 如何用 Python 写一个简易的抽奖程序

    不知道有多少人是被这个头图骗进来的:) 事情的起因是这样的,上周有同学问小编,看着小编的示例代码敲代码,感觉自己也会写了,如果不看的话,七七八八可能也写的出来,但是一旦自己独立写一段程序,感觉到无从下 ...

  4. 如何用Python写一个计算器软件 附带效果图

    该计算器使用Python  tkinter模块开发 效果如下图 import tkinter #导入tkinter模块 root = tkinter.Tk() root.minsize(280,500 ...

  5. 如何用Python写一个贪吃蛇AI

    前言 这两天在网上看到一张让人涨姿势的图片,图片中展示的是贪吃蛇游戏, 估计大部分人都玩过.但如果仅仅是贪吃蛇游戏,那么它就没有什么让人涨姿势的地方了. 问题的关键在于,图片中的贪吃蛇真的很贪吃XD, ...

  6. 如何用Python写一个每分每时每天的定时程序

    1.计算生日是星期几 当你女朋友要过生日了,你肯定要定找家饭店订个餐庆祝一下,餐馆工作日会空一些,周末位置不好定,要是能知道她的生日是星期几就好了,下面这个程序就能搞定~~ 比如girl friend ...

  7. 【Python】如何基于Python写一个TCP反向连接后门

    首发安全客 如何基于Python写一个TCP反向连接后门 https://www.anquanke.com/post/id/92401 0x0 介绍 在Linux系统做未授权测试,我们须准备一个安全的 ...

  8. 用Python写一个简单的Web框架

    一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI( ...

  9. [py]python写一个通讯录step by step V3.0

    python写一个通讯录step by step V3.0 参考: http://blog.51cto.com/lovelace/1631831 更新功能: 数据库进行数据存入和读取操作 字典配合函数 ...

随机推荐

  1. 解决Zend加密的PHP页面出现Incompatible file format的问题

    错误如图: 致命错误:不兼容的文件格式可能的原因: 1.文件本身加密的问题,很有可能你用的Zend进行加密了,但是因为版本的问题,很有可能是你的主机上的Zend Optimizer版本太低了.2.文件 ...

  2. 关于nutz跨服务器上传文件

    关于nutz跨服务器上传文件  发布于 578天前  作者 yong9664  770 次浏览  复制  上一个帖子  下一个帖子  标签: 无 是这样的,项目在一台服务器,文件要存储到另外一台服务器 ...

  3. ABI是编译器的开发指南

    http://blog.csdn.net/soaringlee_fighting/article/details/70214785 1) ABI: 二进制应用程序接口(Application Bina ...

  4. 使用taobao cnpm 源解决npm无法安装module问题

    npm 安装nativescript时出现异常,一直停着不动.应该是源被墙了的问题可以使用淘宝仓库,执行下面的命令: alias cnpm="npm --registry=https://r ...

  5. 线程 task训练

    1. task类表示一个线程,最简单的task的构造方法是 ,参数是Action<t>,是一个无返回值的泛型委托. 指向要执行的函数.当调用·start()方法时,就执行子线程.执行指向的 ...

  6. C语言函数申明关键字inline

    内联inline是给编译器的优化提示,如果一个函数被编译成inline的话,那么就会把函数里面的代码直接插入到调用这个函数的地方,而不是用调用函数的形式.如果函数体代码很短的话,这样会比较有效率,因为 ...

  7. Linux内存管理 —— 内核态和用户态的内存分配方式

    1. 使用buddy系统管理ZONE我的这两篇文章buddy系统和slab分配器已经分析过buddy和slab的原理和源码,因此一些细节不再赘述.所有zone都是通过buddy系统管理的,buddy ...

  8. machine learning学习笔记

    看到Max Welling教授主页上有不少学习notes,收藏一下吧,其最近出版了一本书呢还,还没看过. http://www.ics.uci.edu/~welling/classnotes/clas ...

  9. django中介模型,CBV模型,及logging日志配制

    1.中介模型 中介模型,这个是在我们创建表格时,多对多添加的时候应用到的,通过制定ManyToManyField字段中的through参数来定义,为两者的关系新建一个中介class 为什么会产生这个中 ...

  10. mpvue项目中安装weui

    观察一下发现,mpvue项目打包css的规律是:根组件App.vue里的style样式全部打包到 dist  /  static / css / app.wxss ..   参照微信小程序的原生引入使 ...