'''
函数实战:
.加法计算器
.过滤器
.登录功能实战
''' def add(a,b):
return a+b def login_order():
return 'asdfasdfdasfadsf' def myOrder(session):
'''查看我的订单记录'''
if session == 'asdfasdfdasfadsf':
print('login success')
print('你可以查询你的订单记录了:具体信息。。。')
return True
else:
print('login fail')
return False
myOrder(login()) '''
需求:一个用户登陆系统成功后显示它登陆的账号
.注册,就是把注册的账号写到了info记事本中
.登录,从记事本info.txt中读取注册的用户名和密码
.然后登录,登录成功后,打印出登录账号的信息
.优化代码
''' def register(username,password):
'''
注册用户
:param username:注册的用户名
:param password:注册账号的密码
'''
# username = input('请输入您的账号:\n')
# password = input('请输入您的密码:\n')
temp = username + '|'+ password
#把注册的用户名和密码写到info.txt文件中
with open('info.txt','w') as f:
f.write(temp)
# register() def login(username,password):
'''
用户登录系统
:param username:登录的用户名
:param passoword: 登录的密码
:return: 登录成功 False:登录失败
'''
#读取记事本info.txt中的数据
f=open('info.txt','r')
# print(f.read(),type(f.read()))
list1 = f.read().split('|')
# print(list1,type(list1))
# print('username:',list1[])
# print('password:',list1[])
# username = input('请输入登录的账号: \n')
# password = input('请输入登录的密码: \n')
if username == list1[] and password ==list1[]:
# print('login is success')
return True
else:
# print('login is fail')
return False def getUserInfo():
'''打印用户登录成功后的信息'''
f=open('info.txt','r')
list1 = f.read().split('|')
print('恭喜{0},登录系统成功,请开始你的操作:'.format(list1[]))
# if login():
# print('恭喜{0},登录系统成功,请开始你的操作:'.format(list1[]))
# else:
# # print('login fail')
# return False def exit():
'''退出系统'''
import sys
sys.exit() def getUsername():
'''获取输入的用户名'''
username = input('请输入您的账号:\n')
return username def getPassword():
'''获取输入的密码'''
password = input('请输入您的账号的密码:\n')
return password def system():
'''程序执行的入口'''
# username = input('请输入登录的账号: \n')
# password = input('请输入登录的密码: \n')
while True: #.获取用户信息
t=int(input('1、注册 2、登录 3、退出系统\n'))
if t == :
# username = input('请输入您的账号:\n')
# password = input('请输入您的密码:\n')
register(getUsername(),getPassword())
elif t == :
# username = input('请输入登录的账号: \n')
# password = input('请输入登录的密码: \n')
s=login(getUsername(),getPassword())
if s:
getUserInfo()
else:
print('很遗憾!请登录系统,谢谢~')
# elif t == :
# getUserInfo()
elif t == :
exit()
else:
break if __name__ == '__main__':
system() '''
.代码优化:用户名和密码分离,放入主函数,login(username,password) 入参数
.注册代码进行分离
.写一个方法对
'''

Python基础入门-函数实战登录功能的更多相关文章

  1. python基础之函数的应用

    #函数应用# 1.语法"""def 函数名(参数): 函数体"""# 2. 没有参数的函数# def readbook():# print( ...

  2. Python基础入门总结

    Python基础入门教学 基础中的基础 列表.元组(tuple).字典.字符串 变量和引用 函数 python视频教程下载 基础中的基础 解释型语言和编译型语言差距: Python概述 解释器执行原理 ...

  3. python基础——filter函数

    python基础——filter函数 Python内建的filter()函数用于过滤序列. 和map()类似,filter()也接收一个函数和一个序列.和map()不同的是,filter()把传入的函 ...

  4. Python基础入门教程

    Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...

  5. 八. Python基础(8)--函数

    八. Python基础(8)--函数 1 ● 函数返回布尔值 注意, 自定义的函数也可以是用来作逻辑判断的, 例如内置的startswith()等函数. def check_len(x):     ' ...

  6. [新手必备]Python 基础入门必学知识点笔记

    Python 作为近几年越来越流行的语言,吸引了大量的学员开始学习,为了方便新手小白在学习过程中,更加快捷方便的查漏补缺.根据网上各种乱七八糟的资料以及实验楼的 Python 基础内容整理了一份极度适 ...

  7. python基础之函数详解

    Python基础之函数详解 目录 Python基础之函数详解 一.函数的定义 二.函数的调用 三.函数返回值 四.函数的参数 4.1 位置参数 4.2 关键字参数 实参:位置实参和关键字参数的混合使用 ...

  8. python基础——匿名函数

    python基础——匿名函数 当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便.  在Python中,对匿名函数提供了有限支持.还是以map()函数为例,计算f(x)=x2时 ...

  9. python基础——返回函数

    python基础——返回函数 函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回.  我们来实现一个可变参数的求和.通常情况下,求和的函数是这样定义的: def calc_ ...

随机推荐

  1. Tornado输出和响应头

    1.输出 再来看看输出`write`,实际上,`write`并没有直接把数据返回给前端,而是先写到缓存区,函数结束之后才会返回到前端,我们验证如下 class FlushHandler(tornado ...

  2. [原]zeromq框架测试报告

    一.环境: 服务器:linux 4核 16G 虚拟机 1台 客户端:linux 4核 16G 2000台(模拟) 数据包大小:1036字节 二.参数设置: ulimit -n 65536 服务端处理线 ...

  3. 自动工作负载库理论与操作(Automatic Workload Repository,AWR)

    AWR的由来:    10g之前的oracle:用户的连接将产生会话,当前会话记录保存在v$session中:处于等待状态的会话会被复制一份放在v$session_wait中.当该连接 断开后,其原来 ...

  4. 洛谷3778 [APIO2017]商旅

    题目:https://www.luogu.org/problemnew/show/P3778 一看就是0/1分数规划.但不能直接套模板,因为有个商品种类的限制. 考虑从a买在b卖,商品种类根本没用,关 ...

  5. 转 : 配置 mysql-advanced-5.6.21-winx64 免安装版

    mySQL包:mysql-advanced-5.6.21-winx64.zip 下载地址:https://edelivery.oracle.com/EPD/Search/handle_go 服务器版本 ...

  6. MVC FileDownLoad

    public ActionResult MatDownload() { string ShopId = Session["ShopId"].ToString(); var self ...

  7. HTML5视频直播及H5直播扫盲

    章来源:http://geek.csdn.net/news/detail/95188 分享内容简介: 目前视频直播,尤其是移动端的视频直播已经火到不行了,基本上各大互联网公司都有了自己的直播产品,所以 ...

  8. Linux:课程安排、Linux简介、虚拟机安装、课前准备(常用设置和操作)

    一.课程安排 1)Linux 的作用 商业服务器基本上都是 Linux: 开源软件都先支持 Linux: 大数据分析.机器学习首先选 Linux: 整个互联网地基靠Linux撑起来: Linux 系统 ...

  9. python开发面向对象基础:人狗大战学面向对象

    一,通过函数写人狗大战这个故事 #!/usr/bin/env python #_*_coding:utf-8_*_ #1.函数 人模子 def person(name,level,life_value ...

  10. 3 ignite windows 上安装

    实在懒得写了,  基本上按照官网的操作就行,很简单 https://apacheignite.readme.io/docs/getting-started