一、readme
一、功能说明 环境:python3 功能:模拟银行ATM及购物商城等功能! 目的:study 注意:如果在Windows下开发并运行后移植到Linux中,需要删除每个目录中的缓存目录(__pycache__)。 二、目录结构 atm_shopping |-- bank#ATM程序 | |-- bin#程序入口 | | |-- atm_bank.py#ATM后台 | | |-- atm.py#ATM | | `-- __init__.py | |-- func#功能函数 | | |-- function.py | | |-- function.pyc | | |-- __init__.py | | |-- __init__.pyc | | |-- logger.py | | `-- logger.pyc | |-- __init__.py | |-- __init__.pyc | |-- log用户日志 | | `-- __init__.py | |-- user_data#用户账户信息 | | |-- 123.pkl | | `-- __init__.py | `-- user_login#ATM登陆认证 | |-- __init__.py | |-- __init__.pyc | |-- login.py | `-- login.pyc |-- __init__.py `-- shopping#购物程序 |-- bin#程序入口 | |-- goods_put_or_off.py#商品上下架 | |-- __init__.py | |-- shopping.py#购物 | `-- user_set.py#账户设置 |-- func | |-- function.py#功能函数 | `-- __init__.py |-- goods# | |-- goods.pkl#商品 | `-- __init__.py |-- __init__.py |-- log | |-- __init__.py | `-- shopping_log.txt#购物日志 `-- user_login |-- login.py#购物登陆认证 |-- user_create.py |-- user_info_all.bak |-- user_info_all.dat `-- user_info_all.dir 三、使用事例 1)、银行开户 C:\Python36\python3.exe F:/PyCharm/script/atm_shopping/bank/bin/atm_bank.py 1:开户 2:解锁或者冻结账户 3:退出 请选择:1 ----开始开户,请按提示输入--- 请输入账号:123456 请输入姓名:映山红 请输入身份证号:332226199202011020 请输入额度:10000 请输入账户状态,默认为unlock,(Enter): 请输入密码:123456 开户成功:姓名[映山红],账号[123456],额度[10000] 1:开户 2:解锁或者冻结账户 3:退出 请选择:3 Process finished with exit code 0 2)、ATM登陆 C:\Python36\python3.exe F:/PyCharm/script/atm_shopping/bank/bin/atm.py ---登陆认证--- 请输入账号:123456 {'account': '123456', 'password': '123456', 'time': 3, 'money': 10000, 'name': '映山红', 'identified': '332226199202011020', 'status': 'unlock', 'edu': 10000} 请输入密码:123456 欢迎登陆 1:查询 2:提现 3:转账 4:还款 5:改密 6:退出 请选择: 3)购物商城用户创建 C:\Python36\python3.exe F:/PyCharm/script/atm_shopping/shopping/bin/user_set.py 1:创建用户 2:删除用户 3:重置密码 4:重置锁状态 5:查看用户信息 6:退出 请选择:1 请输入用户名(exit:退出):12345 请输入密码:12345 请输入用户名(exit:退出):exit 4)、商品上架 C:\Python36\python3.exe F:/PyCharm/script/atm_shopping/shopping/bin/goods_put_or_off.py --商品上架-- 请输入商品名称(退出:exit):榴莲 请输入商品价格:60 请输入商品名称(退出:exit):苹果 请输入商品价格:15 请输入商品名称(退出:exit):exit 5)、购物 C:\Python36\python3.exe F:/PyCharm/script/atm_shopping/shopping/bin/shopping.py 请输入用户名:123456 用户名不存在,请重新输入 请输入用户名:12345 请输入密码:12345 欢迎登陆 编号 名称 价格 ------------------- 1 榴莲 60 2 苹果 15 请选择: 1:购物 2:退商品 3:付款 4:购物清单 5:退出 请选择:1 请选择要购买的商品编号:1 你选择的了:榴莲 价格为:60 编号 名称 价格 ------------------- 1 榴莲 60 2 苹果 15 请选择: 1:购物 2:退商品 3:付款 4:购物清单 5:退出 请选择:1 请选择要购买的商品编号:2 你选择的了:苹果 价格为:15 编号 名称 价格 ------------------- 1 榴莲 60 2 苹果 15 请选择: 1:购物 2:退商品 3:付款 4:购物清单 5:退出 请选择:4 所购商品清单: 编号 名称 价格 ------------------- 1 榴莲 60 2 苹果 15 编号 名称 价格 ------------------- 1 榴莲 60 2 苹果 15 请选择: 1:购物 2:退商品 3:付款 4:购物清单 5:退出 请选择:3 --银行卡账号登陆-- 请输入账号:123 请输入密码:123 欢迎登陆 应付款:[75] 请输入被转款人的账号:123456 请输入转账金额:75 成功向账户[123456]转账[75]元! 付款成功 编号 名称 价格 ------------------- 1 榴莲 60 2 苹果 15 请选择: 1:购物 2:退商品 3:付款 4:购物清单 5:退出 请选择:5 欢迎下次光临 Process finished with exit code 0 6)、日志查看 F:\PyCharm\script\atm_shopping\bank\log\atm_log.txt 2018-05-03 16:52:51 user: root process_id:14244 modual:logger.py line:19 level:INFO message:开户成功:姓名[映山红],账号[123456],额度[10000] 2018-05-03 16:54:11 user: root process_id:13460 modual:logger.py line:19 level:INFO message:银行卡账户[123456] 登陆成功 2018-05-03 16:54:19 user: root process_id:13460 modual:logger.py line:19 level:INFO message:用户[123456] 查询 2018-05-03 17:01:59 user: root process_id:6444 modual:logger.py line:19 level:INFO message:银行卡账户[123] 登陆成功 2018-05-03 17:02:11 user: root process_id:6444 modual:logger.py line:19 level:INFO message:账户[123] 转账给账户[123456] [75]元 2018-05-03 17:02:11 user: root process_id:6444 modual:logger.py line:19 level:INFO message:账户[123456] 收到账户[123]转账 [75]元 2018-05-03 17:02:15 user: root process_id:6444 modual:logger.py line:19 level:INFO message:账户[123] 退出成功 F:\PyCharm\script\atm_shopping\shopping\log\shopping_log.txt 用户:12345 商品:榴莲 价格:60 时间:2018-05-03 17:02:11 用户:12345 商品:苹果 价格:15 时间:2018-05-03 17:02:11