ATM系统和购物车系统 不需要文件支撑
ATM系统
#coding=utf8
#Version:python 3.6.4
#Tools:Python 2019.9.7
_data_ = '2019/9/7/016 15:27' #时间
_author_ ='gaofeng' #作者
'''
ATM机
需求:
1.登陆
输入账号输入密码
每日只有3次登陆密码错误的机会,超过3次禁止登陆
2.查询余额
3.存款
4.取款
5.转帐
6.退出
'''
infos = [
{'name': 'gaofeng', 'pwd': '123', 'yue': 0},
{'name': 'chenggc', 'pwd': '123', 'yue': 0},
{'name': 'jinyuy', 'pwd': '123', 'yue': 0},
]
# 禁止登陆
ban = False
# 登陆状态
login_state = False
# 账号密码错误次数
login_num = 0
# 菜单 choice
choice = 0
# 输入的用户名
name = ''
# 输入的密码
pwd = ''
# 余额
yue = 0
while ban == False:
# 登陆
while login_state == False:
# 登陆
name = input('请输入账号:')
pwd = input('请输入密码:')
# 查询账号密码是否正确
for info in infos:
if name == info['name'] and pwd == info['pwd']:
print('登陆成功!')
login_state = True
yue = info['yue']
break
# 如果没有账号密码不正确则 运行下面的代码
if login_state == False:
login_num += 1
print('账号密码错误!请重新输入!剩余次数 %s' % (3 - login_num))
if login_num == 3:
print('今日登陆错误次数超限,请明日再来')
ban = True
break
# 打印菜单
if login_state == True and choice == 0:
print('''
1 查询
2 存款
3 转帐
4 取款
5 退出
''')
choice = int(input('请输入操作状态:'))
# 查询
if login_state == True and choice == 1:
print('%s 账户的余额为 %s ¥' % (name, yue))
choice = 0
# 存款
if login_state == True and choice == 2:
money = int(input('请输入你的金额:'))
for info in infos:
if name == info['name']:
info['yue'] += money
yue += money
print('%s 账户存入 %s ¥' % (name, money))
choice = 0
# 转帐:
if login_state == True and choice == 3:
to_state = 0 # 1:成功 2:余额不足
to_num = 0
while to_state == 0:
to_name = input('请输入转入的用户名:')
# 判断 用户是否存在
for info in infos:
if to_name == info['name']:
money = int(input('请输入转帐的金额:'))
# 判断自己账户的金额是否足够
if yue >= money:
info['yue'] += money
yue -= money
print('你给 %s 用户成功转入 %s ¥' % (to_name, money))
to_state = 1
break
else:
print('你的余额不足,请充值后再转帐')
to_state = 2
if to_state == 1:
break
elif to_state == 2:
break
else:
to_num += 1
print('你输入的用户不存在,请重新输入:')
choice = 0
# 取款
if login_state == True and choice == 4:
money = int(input('请输入你的取款金额:'))
# 判断输入的金额是否小于等于余额
if money <= yue:
print('请再出钞口取钞票吧!')
yue -= money
choice = 0
else:
print('你输入的金额大于你的余额,无法取款!')
# 退出
if login_state == True and choice == 5:
break
购物车系统
#coding=utf8
#Version:python 3.6.4
#Tools:Python 2019.9.7
_data_ = '2019/9/7/016 15:27' #时间
_author_ ='gaofeng' #作者
salary = int(input("请输入你的工资:"))
shoppingmart = []
items = (["1","huawei","¥",6799],["2","earphone","¥",3000],["3","notebook","¥",8000])
msg_items = """
--------items-------
1.huawei $ 6799
2.earphone $ 3000
3.notebook $ 8000
-------------------
"""
print(msg_items)
while True:
shopindex = int(input("选择商品:"))
if salary > items[shopindex-1][3]:
shoppingmart.append(items[shopindex-1])
salary -=int(items[shopindex-1][3])
print("你已经买了 {name}!".format(name=items[shopindex-1][1]))
print("你的余额是:$",salary)
decision =input("你现在想离开吗?")
print(msg_items)
else:
print("你的余额不够!请试试别的.")
recharge_ans = input("你想充值码?")
if recharge_ans =="y":
recharge = int(input("请输入金额:"))
print("请等一会...")
salary +=recharge
print("你充值成功了!")
print("余额是:",salary,"现在!")
decision =input("你现在想离开吗?")
print(msg_items)
if decision == "q":
break
else:
continue
print("你已经买了:",shoppingmart)
print("你的余额:$,salary")
print("欢迎你下次光临!")
ATM系统和购物车系统 不需要文件支撑的更多相关文章
- 使用MongoDB和JSP实现一个简单的购物车系统
目录 1 问题描述 2 解决方案 2.1 实现功能 2.2 最终运行效果图 2.3 系统功能框架示意图 2.4 有关MongoDB简介及系统环境配置 2.5 核心功能代码讲解 ...
- 饿了吗开源组件库Element模拟购物车系统
传统的用html+jquery来实现购物车系统要非常的复杂,但是购物车系统完全是一个数据驱动的系统,因此采用诸如Vue.js.angular.js这些框架要简单的多.饿了吗开源的组件库Element是 ...
- 未能加载文件或程序集“Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0ebd12fd5e55cc5”或它的某一个依赖项。系统找不到指定的文件。
在创建ASP.NET MVC项目过程中发生了这个异常 未能加载文件或程序集"Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0 ...
- 未能加载文件或程序集“System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件
ASP.NET 运行时错误:针对类型System.Web.Mvc.PreApplicationStartCode的应用程序邓启动初始化方法Start 引发了异常,显示下列错误消息: 未能加载文件或程序 ...
- 无法启动"D\projects\hello\Debug\hello.exe" 系统找不到指定的文件。[LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏]
这两天安装Visual Studio遇到这样的一个问题,用自己的电脑和公司的电脑都出现同样的问题.两台电脑都是新系统,按理来说是没有问题的.但是一出现问题,对于我这个小白来说,还是耗费了挺多精力都无果 ...
- vmware安装无法打开内核设备 \\.\Global\vmx86: 系统找不到指定的文件
刚刚安装好了虚拟机,Windows XP 64bit Professional,安装好了开发环境,然后重启机器后虚拟机就打不开了,提示“vmware安装无法打开内核设备 \\.\Global\vmx8 ...
- 未能加载文件或程序集“MySql.Web.v20, Version=6.9.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d”或它的某一个依赖项。系统找不到指定的文件
未能加载文件或程序集“MySql.Web.v20, Version=6.9.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d”或它的某一个依赖 ...
- 未能加载文件或程序集“System.Web.Http.WebHost, Version=4.0.0.0, ”或它的某一个依赖项。系统找不到指定的文件。
一:错误提示 "未能加载文件或程序集"System.Web.Http.WebHost, Version=4.0.0.0, Culture=neutral, PublicKeyTok ...
- Could not load file or assembly 'Microsoft.SqlServer.Management.Sdk.Sfc, Version=11.0.0.0 系统找不到指定的文件。
环境: web服务器: ip:192.168.1.32 ,安装有 Visual Studio Premium 2013 操作系统: Microsoft Server 2008 r2+sp1 数据库服 ...
随机推荐
- 在vue中使用pug
安装pug npm i pug pug-loader pug-cli pug-filters -D pug :安装pug pug-loader:pug的loader pug-cli:pug 编译工具 ...
- 廖雪峰Java11多线程编程-1线程的概念-2创建新线程
Java语言内置多线程支持: 一个Java程序实际上是一个JVM进程 JVM用一个主线程来执行main()方法 在main()方法中又可以启动多个线程 1.创建新线程 1.1 方法一:使用Thread ...
- Ionic App 更新插件cordova-plugin-app-version
1.安装相关插件 cordova-plugin-file ,cordova-plugin-file-opener2,cordova-plugin-file-transfer,cordova-plug ...
- NSIS nsDialogs 插件
介绍 nsDialogs nsDialogs 允许在安装程序中创建自定义页面.居于内置的页面之上,nsDialogs 能够创建包含任何类型的以任意形式排列的控件的页面.它能够创建简至仅一个控件的页面, ...
- python学习之路-day1
1 变量 赋值:变量可以是字符串.序列.元组. # author:hams.ali # 界面 line = '-*'*20 # 数字直接可以计算 _var1 = ' # 字符变量拼接 _var_2 = ...
- redis常见的面试题
redis和memched有什么区别,为什么单线程的redis比多线程的memched效率高 string:ky类型 hash:字典redis的哈希结构可以使你像在数据库中更新一个属性一样只修改某一项 ...
- Matlab 路径函数
1 fileparts [pathstr,name,ext] = fileparts(filename) 将filename字符串分解成路径,文件名和文件后缀.文件可以不存在,ext中含有前缀dot( ...
- CentOS 6 忘记root密码的修改方法
1.Linux的root密码修改不像Windows的密码修改找回,Windows的登录密码忘记需要介入工具进行解决.CentOS6和CentOS7的密码方法也是不一样的,具体如下: 2.centos ...
- Linux中单引号与双引号区别
1. 单引号内的所有字符都保持它本身字符的意思,而不会被bash进行解释,echo -e时转义字符(\n,\t等)将被解释,如echo -e 'aa\naa'将是两行aa. 2.除了$.``(不是单引 ...
- Leetcode448.Find All Numbers Disappeared in an Array找到所有数组中消失的数字
给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次. 找到所有在 [1, n] 范围之间没有出现在数组中的数字. 您能在不 ...