【python之路21】用户登陆程序函数
一、用户登陆函数实例
1、注意:以后写函数时必须在函数第一行后按回车加入“”““”“””两对三引号后回车,此时会自动列出参数值,注释函数的作用、参数的用法和返回值
#!usr/bin/env python
# -*- coding:utf-8 -*-
def LogIn(username,password):
"""
读取login文件的用户名和密码进行校验
:param username: 传入用户名
:param password: 传入密码
:return: 如果用户名和密码匹配则返回True,否则返回False
"""
with open('login','r',encoding='utf-8') as f:
for line in f:
line = line.strip()
login = line.split('$')
if username == login[0] and password == login[1]:
return True
return False bol = LogIn('tqg','')
if bol:
print('登陆成功')
else:
print('登陆失败')
2)用户登陆及注册功能
#!usr/bin/env python
# -*- coding:utf-8 -*-
def LogIn(username,password):
"""
读取login文件的用户名和密码进行校验
:param username: 传入用户名
:param password: 传入密码
:return: 如果用户名和密码匹配则返回True,否则返回False
"""
with open('login','r',encoding='utf-8') as f:
for line in f:
line = line.strip()
login = line.split('$')
if username == login[0] and password == login[1]:
return True
def register(username,password):
"""
用户注册实现
:param username: 用户名
:param password: 密码
:return: None,把用户名和密码按照 用户名$密码 格式写入login文件
"""
with open('login','a',encoding='utf-8') as f:
emp = '\r' + username + '$' + password
f.write(emp)
def user_exist(uname):
"""
判断文件中是否存在用户名
:param uname: 用户名
:return: 如果存在则返回True,不存在则返回False
"""
with open('login','r',encoding='utf-8') as f:
for line in f:
line = line.strip()
line_list = line.split('$')
if line_list[0] == uname:
return True
return False
def main():
emp = input("登陆请输入1;注册请输入2:")
uname = input("请输入用户名:")
pwd = input("请输入密码:")
if emp == "":
if LogIn(uname,pwd):
print('登陆成功!')
else:
print('登陆失败!')
elif emp == "":
if user_exist(uname):
print('用户名已存在,不允许注册。')
else:
register(uname,pwd)
print("注册成功!")
else:
print('您输入的命令不正确!') main()
【python之路21】用户登陆程序函数的更多相关文章
- python之路:用户输入(一)
python之路:用户输入(一) 好了,现在我学了点博客的用法,现在不会像以前的那么土了.好吧,不多说,我要讲课了. 今天,我会用情景实例给大家说这个用户输入. 情景是:你是IT教育的python带头 ...
- Python手把手教程之用户输入input函数
函数input() 函数 input() 让程序暂停运行,等待用户输入一些文本.获取用户输入后,Python将其存储在一个变量中,以方便你使用. 例如,下面的程序让用户输入一些文本,再将这些文本呈现给 ...
- 【python之路18】内置函数,补充请看【python之路46】
1.abs(number)表示某个数字的绝对值 print(abs(-123)) #打印出123 2.all(iterable) 表示可迭代的参数全部为True那么返回True,否则返回False r ...
- Python之路 day2 购物车小程序1
#Author:ersa ''' 程序:购物车程序 需求: 启动程序后,让用户输入工资,然后打印商品列表 允许用户根据商品编号购买商品 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 可随时 ...
- Python之路 day1 用户登录多次被锁定
编写登陆接口: 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 #Author:ersa import getpass,os,sys #读取账户信息到内存中 try: accounts_fil ...
- python之路——21
复习 1.序列化:数据类型转换成字符串的过程 为了方便存储和网络传输2.序列化模块: 1.json 1.dumps 2.loads 3.dump 和文件相关 4.load 不能load多次 2.pic ...
- python之路--动态传参,作用域,函数嵌套
一 . 动态传参(重点) * , ** * 与 ** * 在形参位置. * 表示不定参数, 接收的是位置参数 接收到的位置参数的动态传参: 都是元组 def eat(*food): # 在形参这里 ...
- 【Python之路】特别篇--property()函数 和 @property 装饰符
Python中有一个被称为属性函数(property)的小概念,它可以做一些有用的事情.在这篇文章中,我们将看到如何能做以下几点: 将方法转换为只读属性 重新实现一个属性的setter和getter方 ...
- 【python之路46】内置函数2,是【python之路18】的补充
将3.5版本中的68个内置函数,按顺序逐个进行了自认为详细的解析.为了方便记忆,将这些内置函数进行了如下分类: 数学运算(7个) 类型转换(24个) 序列操作(8个) 对象操作(7个) 反射操作(8个 ...
随机推荐
- System.Web.Mvc.ViewEngineResult.cs
ylbtech-System.Web.Mvc.ViewEngineResult.cs 1.程序集 System.Web.Mvc, Version=5.2.3.0, Culture=neutral, P ...
- Jeecg-Boot 2.0.1 版本发布,前后端分离快速开发平台
Jeecg-Boot项目简介 Jeecg-boot 是一款基于代码生成器的快速开发平台! 采用前后端分离技术:SpringBoot,Mybatis,Shiro,JWT,Vue & Ant De ...
- Spring Cloud Config-Client 无法获取 Config-Server 在 github 上的配置文件的属性值,竟然是因为
Spring Cloud Config-Client 无法获取 Config-Server 在 github 上的配置文件的属性值,竟然是因为!!! 2018年07月23日 16:33:25 一颗很菜 ...
- MapReduce深入理解输入和输出格式(1)-输入分片与记录
一个输入分片( in put split)就是能够被单个map 操作 处理的输入块. 每一个map 操作只处理一个输入分片,并且一个一个地处理每条记录,也就是一个键/值对.输入分片和记录都是逻辑上的, ...
- 2、mysql密码过期的修改方法(your password has expired)
今天打开SQLyog提示密码过期:Your password has expired 解决方法: 1. 启动MySQL服务 2. 启动MySQL后台 3. 执行以下命令 step 1: S ...
- Android开发 Camera2开发_1_拍照功能开发
介绍 google已经在Android5.1之后取消了对Camera1的更新,转而提供了功能更加强大的Camera2.虽然新版本依然可以使用Camera1但是,不管是各种机型适配还是拍照参数自定义都是 ...
- 廖雪峰Java10加密与安全-2加密算法-1URL编码
1.URL编码 URL编码是浏览器发送数据给服务器时使用的编码. 如通过百度搜索美女: 编码前:https://www.baidu.com/s?wd=美女 编码后:https://www.baidu. ...
- html2canvas JS截图插件
github/download:https://github.com/niklasvh/html2canvas/releases 参考文章:基于html2canvas实现网页保存为图片及图片清晰度优化 ...
- IDEA修改Servlet代码模板
- Python学习之高阶函数--嵌套函数、函数装饰器、含参函数装饰器
玩了一晚上王者,突然觉得该学习,然后大晚上的搞出来这道练习题,凌晨一点写博客(之所以这么晚就赶忙写是因为怕第二天看自己程序都忘了咋写的了),我太难了o(╥﹏╥)o 言归正传,练习题要求:构造类似京东的 ...