首页 > 其他分享 >ATM项目

ATM项目

时间:2022-10-31 22:44:40浏览次数:72  
标签:功能 py 项目 ATM 用户 pass def 字典

ATM项目

目录框架

bin
	start.py
conf
	settings.py
core
	src.py
interface
	user_interface.py
	shop_interface.py
	bank_interface.py
	admin_interface.py
lib
	common.py
readme
requirements

start.py 启动文件

import os
import sys

base_dir = os.path.dirname(os.path.dirname(__file__))
sys.path.append(base_dir)  # 将获取到的项目目录加入到系统环境变量  保证兼容性

if __name__ == '__main__':
    from core import src

    src.run()

src.py 用户交互层

定义ATM所需功能函数 函数功能字典 以及运行函数
def register():pass
def login():pass
def check_balance():pass
def withdraw():pass
def pay_back():pass
def transfer():pass
def water_flow():pass
def add_shop_car():pass
def show_shop_car():pass
def pay_shop_car():pass
def admin():pass
func_dict = {
    '1': register,
    '2': login,
    '3': check_balance,
    '4': withdraw,
    '5': pay_back,
    '6': transfer,
    '7': water_flow,
    '8': add_shop_car,
    '9': show_shop_car,
    '10': pay_shop_car,
    '11': admin
}
def run():
    while True:
        print("""
        1.注册功能
        2.登录功能
        3.查看余额
        4.提现功能
        5.还款功能
        6.转账功能
        7.查看流水
        8.添加购物车
        9.查看购物车
        10.结算购物车
        11.管理员功能""")
        choice_num = input('请输入您想执行的功能编号>>>:').strip()
        if choice_num in func_dict:
            func_dict[choice_num]()
        else:
            print('您输入的编号暂无功能')

简单的框架编写好后编写函数具体功能

注册功能

# 1.获取用户输入得到相关数据

# 2.用户两次输入的密码 判断

# 3.简单的两次密码判断 不相等直接停止函数 相等执行第二层核心代码 并接受第二层的返回值

# 4.密码一致后判断用户是否存在 由此引申出-->需要db目录路径 然后用户文件需要进行拼接 用户相关数据增改查删在第三层 也就是可以直接新增db_handler.py在这里进行用户文件的查询 存储

# 5.由于db目录路径每次拼接用户路径都需要是固定的 将它放置在配置文件

# 6.在第三层编写 用户读取的代码

# 8.判断用户路径是否存在  存在返回该字典  不存在 默认返回None

# 9.判断是否接受到字典

# 12.密码得加密  为了之后其他数据也要加密 做成函数  放在公共功能

# 10.定义用户字典

# 11.存储用户数据第三层再次定义存储用户信息的函数

登录功能

# 1.获取用户输入得到相关数据
# 2.直接调用第二层核心代码 并接受返回值
# 3.查询输入的用户存不存在
# 4.字典存在从而判断密码是否相等  注册时密码加密处理  登录也得做加密
# 5.接受完值 如果登录成功 得记录状态 为之后的购物车 银行相关操作做准备

查看余额

# 1.查看当前用户余额前得登录   在不改变调用与源代码的情况得用装饰器  装饰器公共功能  查看余额余额又是另一个业务接口 不在用户接口了得在银行接口
# 2.获取用户字典

提现功能

# 1.提现功能 获取要提现的金额
# 2.提现的金额得做判断是否是小数或者整数 调用第二层代码
# 3.获取的金额是否符合条件  之后相关功能也需要判断 也得做成函数 放在公共功能  
# 4.判断金额是否符合  可以使用异常捕获
# 5.获取用户字典 并获取用户余额
# 6.判断提现金额 与 用户余额   提现通常都需要手续费  手续费 又是可更改的可以放在配置文件中
# 用户余额足够提现金额加手续费 则扣除 并重新存储字典

充值功能

# 1.还款功能 也就是充值 获取充值金额
# 2.也得做判断充值金额是否符号条件 调用第二层
# 3.同提现功能 充值金额做判断
# 4.符合条件后 获取用户字典
# 5.修改字典余额
# 6.重新存储字典

转账功能

# 1.转账功能 先获取接受金额的人 和 转账的金额
# 2.调用第二层
# 3.获取接收人的用户字典
# 4.判断转账金额是否符合条件
# 5.代码能够执行到这就可以读取转账的人的字典 并扣除转账金额 并重新存储   接收人也得更改

添加流水功能

# 1.查看流水 直接调用第二层代码层
# 2.获取当前用户 用户字典
# 判断流水 列表是否有值
# 判断返回的值是否成立
# 成立 遍历数据并打印
# 不成立 直接打印结果
# 3.在第二层核心代码层 添加流水  并思考日志配置
# 4.流水添加成功后运行测试下 是否 成功  并添加日志  并运行测试

购物车

添加购物车代码全在第二层 购物车返回值格式化输出无值直接输出结果

结算购物车全在第二层  

标签:功能,py,项目,ATM,用户,pass,def,字典
From: https://www.cnblogs.com/qian-yf/p/16846151.html

相关文章

  • ATM思路
    ATM思路创建文件目录bin文件夹 start.pyconf文件夹 settings.pycore文件夹 conf.pydb文件夹保存用户数据文件interface文件夹 user_interface第二层逻辑......
  • ATM项目思路
    ATM思路创建文件目录bin文件夹 start.pyconf文件夹 settings.pycore文件夹 conf.pydb文件夹保存用户数据文件interface文件夹 user_interface第二层逻辑......
  • ATM
    项目架构设计三层架构 core目录下的src.py(浏览器/用户视图层) interface目录下的多个py文件(框架/逻辑接口层) db目录下db_handler.py(数据库服务/数据处理层)项目目录搭......
  • ATM+购物车功能逻辑
    ATM+购物车功能逻辑功能列表1、注册功能2、登录功能3、查看余额4、体现功能5、充值功能6、转账功能7、查看流水8、添加购物车9、查看购物车10、结算购物车11、......
  • ATM项目实战
    ATM逻辑描述三层框架简介这里我们使用三层框架的结构编写代码1、第一层(src.py)功能展示和数据获取层,顾名思义打印数据或是获取用户输入2、第二层(interface文件夹下内......
  • 学习笔记——美多商城——1 美多商城项目准备
    2022-10-23步骤:一、创建工程仓库(1)在“码云”上创建一个仓库,在本地盘符中创建一个文件夹,右击,使用git,将远程仓库的内容克隆到本地仓库中,点击“GitBashHere”。将刚刚创......
  • ATM购物车(思路流程)
    ATM购物车(思路流程)启动文件binstart.py整个项目的启动文件在这里启动,去调展示层展示层coresrc.py获取用户信息把结果展示给用户逻辑判断interfanca......
  • ATM编写思路
    ATM编写思路src文件主体文件写入需要的功能函数 各种功能的函数写一个主体框架的函数 设置一个调用各种功能函数的字典打印操作获取用户选择的功能编号每一个函数......
  • ATM+购物车
    ATM+购物车项目分析1.项目功能需求1.注册功能2.登录功能3.查看余额4.提现功能5.充值功能6.转账功能7.查看流水8.添加购物车......
  • ATM+购物车开发流程
    ATM项目开发流程1.项目需求分析ATM一系列小功能:注册,登录,提现,转账,充值,查看流水,购物车,管理员2.ATM架构设计第一层与用户直接打交道不参与核心逻辑的编写(数据展示与......