目录
1. 前言:
2. 案例详情:
-> 2.1 案例拆解
---> 2.1.1 主页功能:
---> 2.1.2 查余额:
---> 2.1.3 存钱
---> 2.1.4 取钱
---> 2.1.5 返回首页重试[可有可无]
---> 2.1.6 退出
3. 实现代码(python版)
4. 运行结果:
-> 4.1 文字式 想写的可以直接复制文字
-> 4.2 图示(更清晰)
5. 总结:
1. 前言:
之前的文章在专栏就能看到 按照编号顺序 案例网上找并改编的 代码自己手写的
基础目录:
变量和数据类型:了解Python中不同的数据类型和如何定义变量。
运算符:学习Python中的各种运算符,如算术、比较、逻辑、成员运算符等。
控制流程语句:学习Python中的各种控制流程语句,如条件语句、循环语句等。
函数和模块:学习如何定义函数以及如何使用模块来组织代码。
文件操作:理解如何读写文件。
异常处理:理解如何处理异常情况。
数据结构:了解Python中常用的数据结构,如列表、元组、字典、集合等。
面向对象编程:学习Python中的面向对象编程,如类、对象、继承、多态等。
正则表达式:了解如何使用正则表达式进行字符串匹配和替换。
标准库的使用:学习Python标准库中常用的模块和函数
python基础之循环 变量 函数组合 的一个新案例
2. 案例详情:
ATM的收银取银过程 大致借用一下网上案例 自己实在懒得编了
-> 2.1 案例拆解
---> 2.1.1 主页功能:
请输入您要操作的功能: 1查询余额 2存钱 3取钱 4返回主页(重试) 5退出
---> 2.1.2 查余额:
都要显示当前余额
---> 2.1.3 存钱
询问存多少 存完返回主页
---> 2.1.4 取钱
询问取多少 取完返回主页
---> 2.1.5 返回首页重试[可有可无]
返回首页(表示重试)
---> 2.1.6 退出
(先退出用户名 后退出)
3. 实现代码(python版)
不用java写了 没啥必要 很简单的小案例
写法一大推 本案例可能有更好的写法吧
"""
四个选项 查询余额 存钱 取钱 退出
存钱 取钱 查余额都要显示当前余额
"""
money = 5000
name = None
def show_balance():
print(f"用户姓名: {name} , 余额是: {money}元")
main_menu()
def add_balance(add_money):
global money
money += add_money
show_balance()
def sub_balance(sub_money):
"""
取钱 注意 钱没了就不能取了
:param sub_money: 取的钱数
:return: None
"""
global money
if sub_money <= money:
money -= sub_money
else:
print("操作失败, 余额不足, ", end="")
show_balance()
def exit_active():
global name
name = None
def main_menu():
global name
if not name:
name = input("请输入您的姓名: \n")
print(f"当前登录的用户名字为: {name}")
input_num = int(input("请输入您要操作的功能: 1查询余额 2存钱 3取钱 4返回主页(重试) 5退出\n"))
if input_num == 1:
print("1 查询余额操作------> ")
show_balance()
if input_num == 2:
print("2 存钱操作------> ")
add_balance(int(input("请输入存入金额: \n")))
if input_num == 3:
print("3 取钱操作------> ")
sub_balance(int(input("请输入存入金额: \n")))
if input_num == 4:
print("4返回主页------> ")
main_menu()
if input_num == 5:
print("5 退出------> ")
exit_active()
return None
# 程序入口
while True:
if not main_menu():
break
print(f"当前用户退出成功, 现在登录的用户是: {name}")
4. 运行结果:
-> 4.1 文字式 想写的可以直接复制文字
请输入您的姓名:
pzy
当前登录的用户名字为: pzy
请输入您要操作的功能: 1查询余额 2存钱 3取钱 4返回主页(重试) 5退出
1
1 查询余额操作------>
用户姓名: pzy , 余额是: 5000元
当前登录的用户名字为: pzy
请输入您要操作的功能: 1查询余额 2存钱 3取钱 4返回主页(重试) 5退出
2
2 存钱操作------>
请输入存入金额:
100
用户姓名: pzy , 余额是: 5100元
当前登录的用户名字为: pzy
请输入您要操作的功能: 1查询余额 2存钱 3取钱 4返回主页(重试) 5退出
3
3 取钱操作------>
请输入存入金额:
50
用户姓名: pzy , 余额是: 5050元
当前登录的用户名字为: pzy
请输入您要操作的功能: 1查询余额 2存钱 3取钱 4返回主页(重试) 5退出
4
4返回主页------>
当前登录的用户名字为: pzy
请输入您要操作的功能: 1查询余额 2存钱 3取钱 4返回主页(重试) 5退出
5
5 退出------>
当前用户退出成功, 现在登录的用户是: None
-> 4.2 图示(更清晰)
5. 总结:
---> 功能分析步骤:
上面案例 最开始想清楚 那些功能是共用的
1. 先把所有功能做成函数
2. 分析全局变量是什么 余额和登录人姓名
3. 分析主体 判断出是一个死循环 同时找到程序出口(输入5 退出 则退出(报错也可以))
4. 观察每个功能 将共用方法放到每个单独方法里 (存钱/取钱 -> 查看余额)
5. 查看余额功能后 是不是必然回到主页 (查看余额-> 返回主页main方法)
6. 判断登录用户名 如果有值不是None 则继续操作 否则输入用户名
7. 退出不仅仅是程序退出 同时用户名也需要清除
8. 进行测试, 注意测试 取出超过余额的钱是否能取出 (操作失败,余额不足 )