用户名密码登录小程序及input与raw_input区别。
一、此次程序需要实现:
1、设定固定的用户名密码
2、用户名密码输入正确打印登录正确信息
3、仅仅运行三次登录
二、本次使用的python版本为:
Windows下版本号:
C:\Users\daisy>python --version
Python 2.7.13rc1
Linux下版本号:
三、设计思路:
1、定义用户名变量:USER_name = "admin1"
2、定义密码变量:PASSWORD = "admin123"
3、由于必须实现3次登录可以采用循环。
四、程序以windows下程序:
以下是在pycharm下编写程序及操作使用raw_input输入:
USER_name = "admin1" #定义用户名
PASSWORD = "admin123" #定义密码
for i in range(3): #执行3次
input_name = raw_input("input your name:") #输入用户名
input_pass = raw_input("input your passwd:") #输入密码
if input_name == USER_name and input_pass == PASSWORD: #条件语句如果用户名密码正确中中执行以下操作不表示登录成功。
print("you are right.")
print("login is right.")
break #登录成功跳出循环
else:
print("your name is wrong.") #登录用户名密码错误输出错误。
else:
print("input too many count.") #循环完成三次登录都不成功输出。
执行结果:
执行三次错误用户名和密码:
input your name:admin
input your passwd:admin
your name is wrong.
input your name:admin
input your passwd:admin
your name is wrong.
input your name:admin
input your passwd:passwd
your name is wrong.
input too many count.
执行正确用户名密码:
input your name:admin
input your passwd:admin
your name is wrong.
input your name:admin1
input your passwd:admin123
you are right.
login is right.
在pycharm下编写程序及操作使用input输入:
USER_name = "admin1" #定义用户名
PASSWORD = "admin123" #定义密码
for i in range(3): #执行3次
input_name = input("input your name:") #输入用户名
input_pass = input("input your passwd:") #输入密码
if input_name == USER_name and input_pass == PASSWORD: #条件语句如果用户名密码正确中中执行以下操作不表示登录成功。
print("you are right.")
print("login is right.")
break #登录成功跳出循环
else:
print("your name is wrong.") #登录用户名密码错误输出错误。
else:
print("input too many count.") #循环完成三次登录都不成功输出。
测试报错:
input your name:admin
Traceback (most recent call last):
File "C:/Users/daisy/PycharmProjects/s12/day1/login��.py", line 6, in <module>
input_name = input("input your name:")
File "<string>", line 1, in <module>
NameError: name 'admin' is not defined
Process finished with exit code 1
原因input与raw_input区别:
>>> input_name = input("input your name:")
input your name:23
>>> type(input_name)
input your name:23
>>> type(input_name)
<type 'str'> #表示字符串
由此可见:input默认输出为整型,raw_input默认输出为字符串:
使用input解决方法:(将输入的值用引号引起来表示是字符串 )
input your name:"admin"
input your passwd:"admin123"
your name is wrong.
input your name:"admin1"
input your passwd:"admin123"
you are right.
login is right.
总结:由此可见2.X版本最好使用raw_input输入字符串,那么raw_input如何输入数字类型呢?
以下是方法:
>>> input_name = int(raw_input("input your name:")) #采用int表示整型:
input your name:23
>>> type(input_name)
<type 'int'> #确实是int类型:
>>> input_name = float(raw_input("input your name:")) #采用浮点:
input your name:23
>>> type(input_name)
<type 'float'> #确实是浮点类型:
>>>
四、程序以在Linux下程序:
[root@localhost ~]# python3 --version
Python 3.5.2 #版本:
[root@localhost ~]# python3
Python 3.5.2 (default, Apr 9 2017, 00:21:30)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-18)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> USER_name = "admin1"
PASSWORD = "admin123"
# input_num = 1
>>> >>> ... # input_count = 0
... for i in range(1, 4):
... input_name = input("input your name:")
... input_pass = input("input your passwd:")
... if input_name == USER_name and input_pass == PASSWORD:
... print("you are right.")
... print("login is right.")
... break
... else:
... print("your name is wrong.")
... else:
... print("input too many count.")
...
input your name:admin
input your passwd:admin
your name is wrong.
input your name:admin1
input your passwd:admin123
you are right.
login is right.
>>>
由于3.x版本已经精简所以使用input不会报错也不需要将输入的值用引号引起来表示字符。
那么我们测试以下input输入的类型:
先输入数字:
>>> input_name = input("input your name:")
input your name:23
>>> type(input_name)
<class 'str'> #也是字符串
同样的想在3.X中输入数字类型可以采用int、float等。可参考上文。
用户名密码登录小程序及input与raw_input区别。的更多相关文章
- Python用户名密码登录系统(MD5加密并存入文件,三次输入错误将被锁定)及对字符串进行凯撒密码加解密操作
# -*- coding: gb2312 -*- #用户名密码登录系统(MD5加密并存入文件)及对字符串进行凯撒密码加解密操作 #作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.co ...
- 微信小程序:input输入框和form表单几种传值和取值方式
1.传值:index下标传值.页面navigator传值 1.index下标 实现方式是:data-index="{{index}}"挖坑及e.currentTarget.data ...
- pyhton学习,day1作业,用户名密码登录模块
要求,通过用户名密码登录,登录错误3次,锁定用户名 # coding=utf-8 # Author: RyAn Bi import os, sys #调用系统自己的库 accounts_file = ...
- python学习笔记(2)——练习小程序之 " input " 隐藏陷阱
练习小程序之 ----------" input " 隐藏陷阱 age=input('please enter your age:') if age>=18: print(' ...
- 【小程序】---- input获得焦点时placeholder重影BUG
问题小程序的input组件有个自身的bug,即当输入框获取焦点时placeholder内容会出现重影现象. 解决思路原理:将placeholder内容单独写在另外的标签里,控制其显示隐藏.操作:将代表 ...
- Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助
Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助 目录 Pychar ...
- ADO.NET学习系列(四)---窗体版的登录小程序
1.需求分析:做一个登录的小程序,基于Winform的窗体小程序.基本要求:登录成功:弹框显示登录成功,登录失败就弹框显示失败. 扩展功能:登录次数超过3次,就”锁定“用户,提示登录错误次数过多,不能 ...
- python实现注册登录小程序
用python 实现模拟注册和登录的程序:用户信息最终以字典的格式储存在一个txt文件里,具体实现如下: users.txt里用户字典格式如下: { '}, '}, '} } # 注册 f = ope ...
- SpringSecurity实现用户名密码登录(Token)
传统的应用是将Session放在应用服务器上,而将生成的JSESSIONID放在用户浏览器的Cookie中,而这种模式在前后端分离中就会出现以下问题 1,开发繁琐. 2,安全性和客户体验差 3,有些前 ...
随机推荐
- 探索C++的底层机制
探索C++的底层机制 在看这篇文章之前,请你先要明白一点:那就是c++为我们所提供的各种存取控制仅仅是在编译阶段给我们的限制,也就是说是编译器确保了你在完成任务之前的正确行为,如果你的行为不正确,那么 ...
- spring、spring MVC、spring Boot
Spring 是一个“引擎” Spring MVC 是基于 Spring 的一个 MVC 框架 Spring Boot 是基于 Spring4 的条件注册的一套快速开发整合包 Spring 最初利用“ ...
- 数据结构之 栈与队列--- 走迷宫(深度搜索dfs)
走迷宫 Time Limit: 1000MS Memory limit: 65536K 题目描述 一个由n * m 个格子组成的迷宫,起点是(1, 1), 终点是(n, m),每次可以向上下左右四个方 ...
- tload
tload命令以图形化的方式输出当前系统的平均负载到指定的终端.假设不给予终端机编号,则会在执行tload指令的终端机显示负载情形. 语法 tload(选项)(参数) 选项 -s:指定闲时的刻度: - ...
- PHP加密方式。 base!base!base!
PHP中的加密方式有如下几种 1. MD5加密 string md5 ( string $str [, bool $raw_output = false ] ) 参数 str -- 原始字符串. ...
- bzoj-1012 1012: [JSOI2008]最大数maxnumber(线段树)
题目链接: 1012: [JSOI2008]最大数maxnumber Time Limit: 3 Sec Memory Limit: 162 MB Description 现在请求你维护一个数列,要 ...
- Luogu网校听课笔记(自用
TG助学课——noilinux 8.2 深夜 Noi Linux的使用——darkflames的博客 #include<bits/stdc++.h> using namespace std ...
- HNOI2008 明明的烦恼 (purfer序列 + 组合数学)
传送门 这道题题意描述很清楚,不过我自己做的时候确实是一头雾水……又看了题解,发现要用到一个新知识,叫purfer序列. 我们来简单说一下什么是purfer序列.它可以被看作一种树的表现形式.一棵含有 ...
- 字符串转UTF-8码(%开头)
var str = '中'; var code = encodeURI(str); console.log(code); // => %E4%B8%AD
- insufficient memory to configure kdump(没有足够的内存)解决方法(待验证、待解决)
vritualbox上安装redhat 6.4 32位系统 在安装完成重启后开始进行一些初始化的配置,在最后一项是配置Kdump 看到这个"没有足够的内存配置kdump"(在英文界 ...