python atm银行取款系统_python ATM机 案例代码

利用目前学的流程控制写的

'''

ATM机

需求:

1.登陆

输入账号输入密码

每日只有3次登陆密码错误的机会,超过3次禁止登陆

2.查询余额

3.存款

4.取款

5.转帐

6.退出

'''

infos = [

{'name':'jack','pwd':'123','yue':0},

{'name':'bran','pwd':'123','yue':0},

{'name':'egon','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

ATM机运行代码

实现代码: import java.util.Scanner; public class Atm { public static void main(String[] args) { // TODO ...

Python(ATM机low版)

import osclass ATM: @staticmethod def regst(): while 1: nm = input('请输入你的名字:') mm = input('请输入你的密码:' ...

简单的小程序实现ATM机操作

简单的小程序实现ATM机操作 代码如下: package Day06; import java.util.Scanner; public class TestAccount { public stat ...

简易ATM机

简易ATM机(代码如下): /* * 功能:简易银行系统 */package day8; import java.util.Scanner; /** * * @FengYan Huang Admini ...

模块购物商城和ATM机代码:

http://outofmemory.cn/python/video/let-us-python/ python为程序员服务  快来加入群[python爬虫交流群](群号570070796),发现精彩 ...

python实现atm机基本操作及购物车

一.需求分析 ATM机要为用户提供转账,提现,还款,付款,消费流水,操作记录等操作接口 ATM机要为管理员提供创建用户,冻结解冻,修改额度的功能 ATM机管理员认证使用装饰器来实现 购物车要提供管理员 ...

python模块使用案例

python模块使用案例 一.使用MySQLdb模块代码示例: # 导入 MySQLdb模块 import MySQLdb # 和服务器建立链接,host是服务器ip,我的MySQL数据库搭建在本机, ...

模拟ATM机银行系统

淄博汉企Java基础考核项目 模拟银行自助终端系统 一. 本系统模拟银行用户使用ATM机开户.查询.存款.取款功能,要求使用java语言编程实现. 说明: 1. 对于数据输入异常,可使用java异常处 ...

python + hadoop (案例)

python如何链接hadoop,并且使用hadoop的资源,这篇文章介绍了一个简单的案例! 一.python的map/reduce代码 首先认为大家已经对haoop已经有了很多的了解,那么需要建立m ...

随机推荐

ucosII移植

移植ucos II 到一个芯片上,只需要修改下面三个文件:OS_CPU.H,OS_CPU_C.C,OS_CPU_A.ASM. 具体来说,移植主要包括以下几项内容 (1).OS_CPU.H :用#def ...

MyEclipse2014不支持jre1.8吗

myeclipse 2015才支持了java 8 也可以用Eclipse Kepler加插件的形式来支持java 8

20175223 实验一 《JAVA开发环境的熟悉》实验报告

目录 北京电子科技学院(BESTI)实验报告 实验名称:实验一 Java开发环境的熟悉 实验内容.步骤与体会: 一.实验一 Java开发环境的熟悉-1 二.实验一 Java开发环境的熟悉-2 步骤: ...

Scala入门系列(六):面向对象之object

object object相当于class的单个实例,类似于Java中的static,通常在里面放一些静态的field和method.   第一次调用object中的方法时,会执行object的con ...

mongo学习-TTL索引 过期数据

在mongo中我们可以设置文档的过期时间,超过时间,文档会自动删除.(2.x版本中  固定结合也支持,但是到了3.x中 固定集合这个索引不好用) 用法: 1.创建一个db:db.createColle ...

20145310 《Java程序设计》第7周学习总结

20145310 第7周学习总结 教材学习内容总结 本周主要进行第十二章和第十三章的学习. Lambda定义:一个不用被绑定到一个标识符上,并且可能被调用的函数. 在只 ...

将selenium集成到scrapy框架中

一 首先想到的是将selenium 写在下载中间件的process_request中.如以下代码. middleware.py from selenium import webdriver from ...

并不对劲的bzoj4651:loj2084:uoj220:p1173:[NOI2016]网格

题目大意 有一个\(n*m\)(\(n,m\leq10^9\))的网格,每个格子是空地或障碍(\(障碍数\leq10^5\)) 定义两块空地连通,当且仅当它们是"相邻的两块空地"或 ...

Viewpager切换时pager页面的生命周期变化

总结1: 当我们把ViewPager和Fragment合用的时候,切换页面时生命周期会发生对应的变化.变化规律:载入当前页面.前一个页面和后一个页面.我们来看一个实际測试效果图 打开应用会载入第一个页 ...

你可能感兴趣的:(python,atm银行取款系统)