'''
函数实战:
.加法计算器
.过滤器
.登录功能实战
''' 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. Oracle中exp,imp(导入导出)数据迁移注意事项

    这几天做开发库schema备份,出现些问题,记录一下.一,exp时,os语言环境和数据库不同时会自动发生转换.   如果操作系统的字符集小于数据库字符集,就可能出现乱码现象.imp时,同理,也是有可能 ...

  2. ①HttpURLConnection通过报文提交

    在进行短信发送的接口,因厂家不同,有的厂家会采用报文的格式进行短信请求的发送与接收.本文主要介绍利用HttpURLConnection进行短信报文的请求与响应. 一般的url请求分为两种,一种是GET ...

  3. wordpress更换域名

    问题缘由 在群里面看到很多朋友问,wordpress要换域名这么办?后台的设置-常规里修改里域名后,全站打不开了,这是为什么?这么办? 问题解说 其实wordpress换域名需要到数据库进行操作的,首 ...

  4. 记一次RESTful调试过程

    1. 为什么前台怎么调用后台,都是跳到页面不存在. 因为已经改为RESTful,保存按钮的type还是submit: 2. 改成buttong之后,设置onclick="update()“, ...

  5. loj 6053 简单的函数 —— min_25筛

    题目:https://loj.ac/problem/6053 参考博客:http://www.cnblogs.com/zhoushuyu/p/9187319.html 算 id 也可以不存下来,因为 ...

  6. HDU 3018 Ant Trip(欧拉回路,要几笔)

    Ant Trip Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  7. zabbix snmp 协议监控 dell iRDAC

    转摘:http://blog.csdn.net/wanglei_storage/article/details/52789921 http://blog.csdn.net/wanglei_storag ...

  8. Windows可信任路径代码执行漏洞

    乌云里有很多这样的案例,当然在开发过程中也会存在这样的问题 搜索:可信任路径漏洞 调用案例中的描述: Microsoft Windows API使用CreateProcess()函数创建新的进程及其主 ...

  9. UML中关系的分类及其概念——总结备忘

    UML中关系分类: 依赖:依赖是两个事物间的语义关系,其中一个事物(独立事物)发生变化会影响另一个事物(依赖事物)的语义. 关联:关联是类与类之间的联接,它使一个类知道另一类的属性和方法. 聚合:聚合 ...

  10. hibernate反向生成奇葩错误

    错误场景 最近搞一个hibernate的项目,由于好久不用hibernate了,稍微有点生疏(自从用了ibatis–>mybatis后).这个项目用了hibernate,和ibatis.myba ...