python ATM大作业之alex思路

一 ATM

  alex想了一个思路,就是定义一个函数,这个函数可以实现所有的atm的功能:取款,转账,消费等等。

  为了实现这个想法,alex构建了一个两级字典,厉害了。我发现,厉害的人都喜欢用字典。这里还是嵌套字典。一个优点是字典取值很简单,不用循环遍历。而且可以直接成员运算 in or not in,也是可以很容易实现的。

  alex设计的字典是这样的格式:

atm_dic={
    'drawmoney':{'action':'plus','interest':0},
    'trans':{'action':'minus','interest':0.05},
    'replay':{'action':'minus','interest':0.05},
    'consume':{'action':'minus','interest':00}
}

  这个字典一出来,剩下是代码就随心所欲了。

  比如说,我是这样写的。简单写了一下。

print('''
1: 取款
2:转账
3:付款
4:消费
''')

cmd_dic={
    '1':'drawmoney',
    '2':'trans',
    '3':'replay',
    '4':'consume',
}
while True:
    cmd=input('请选择项目:')
    if cmd not in cmd_dic:
        continue
    action=atm_dic[cmd_dic[cmd]]['action']
    interest=atm_dic[cmd_dic[cmd]]['interest']
    print(action,interest)
    balance=10000
    num=10000
    interest=num*interest
    if action=='plus':
        balance=balance+interest+num
    else:
        balance=balance-interest-num
    print(balance)

  

  精髓就是alex的思路。这个字典一出来,代码实现起来就很easy了。

posted @ 2017-09-19 13:44  骑者赶路  阅读(746)  评论(0编辑  收藏  举报