面向对象作业联系

设计一个银行业务相关的简单程序,让它具有:

1.创建账户

2.存款

3.取款

4.展示账户信息

等基本功能。

面向过程的思路设计

def account(name,number,balance):  #返回一个字典
    '''
    :param name: 账户名
    :param number:   账户号码
    :param balance:  账户金额
    :return:  返回一个字典
    '''
    return {
        'name':name,
        'number':number,
        'balance':balance
    }

def deposit(acct,mount):
    '''   
    :param acct: 账户字典 
    :param mount:  存款金额
    :return:  没有返回值(None)
    '''
    if mount <=0:
        print ("不能存负数金额")
    else:
        acct['balance']+=mount

def withdraw(acct,mount):
    '''
    :param acct: 账户字典 
    :param mount: 取款金额
    :return: 没有返回值(None)
    '''
    if mount >acct['balance']:
        print("余额不足!")
    else:
        acct['balance']-=mount
def desc(acct):
    '''
    :param acct:账户字典 
    :return:  返回该账户的字符串表示
    '''
    return '{name} :{balance}'.format(name=acct['name'],balance=acct['balance'])

p=account('Tuple','1234123',8888)
withdraw(p,200)
deposit(p,2000)
print(desc(p))

用“类”来替代没有语义的“字典”

class Account:
    pass

def account(name,number,balance):  #返回一个字典
    acct=Account()
    acct.name=name
    acct.number=number
    acct.balance=balance
    return acct

def deposit(acct,mount):
    '''
    :param acct: 账户字典
    :param mount:  存款金额
    :return:  没有返回值(None)
    '''
    if mount <=0:
        print ("不能存负数金额")
    else:
        acct.balance+=mount

def withdraw(acct,mount):
    '''
    :param acct: 账户字典
    :param mount: 取款金额
    :return: 没有返回值(None)
    '''
    if mount >acct.balance:
        print("余额不足!")
    else:
        acct.balance-=mount
def desc(acct):
    '''
    :param acct:账户字典
    :return:  返回该账户的字符串表示
    '''
    return '{name} :{balance}'.format(name=acct.name,
                                      balance=acct.balance)

p=account('Tuple','1234123',8888)
withdraw(p,200)
deposit(p,2000)
print(desc(p))

用“面向对象”的思路设计

class Account:
    def __init__(self,name,number,balance):
        self.name=name
        self.number=number
        self.balance=balance

    def deposit(self,mount):
        if mount <=0:
            print ("不能存负数金额")
        else:
            self.balance+=mount

    def withdraw(self,mount):
        if mount >self.balance:
            print("余额不足!")
        else:
            self.balance-=mount
    def desc(self):
        return '{name} :{balance}'.format(name=self.name,
                                          balance=self.balance)

p=Account('Tuple','1234123',8888)
p.deposit(2000)
p.withdraw(1500)
print(p.desc())
原文地址:https://www.cnblogs.com/taoge188/p/8503742.html