lucy6666 发表于 2020-6-2 10:38:34

小白求助 python关于银行转账问题

下面的程序是代表银行的转账
class BankAccount(object):
      interest_rate = 0.3
      def __init__(self, name, number, balance):
         self.name = name
         self.number = number
         self.balance = balance
         return
1)指出类变量和实例变量
2)之后添加deposit()以增加余额,withdraw()方法以减少余额。

heidern0612 发表于 2020-6-2 10:42:12

1、interest_rate = 0.3 类变量;name, number, balance 实例变量。

2、直接调用balance就能增删改查了。

Twilight6 发表于 2020-6-2 10:47:09

本帖最后由 Twilight6 于 2020-6-2 10:59 编辑


[*] 类体中、所有函数之外:此范围定义的变量,称为类属性或类变量;
[*] 类体中,所以函数内部:以“self.变量名”的方式定义的变量,称为实例属性或实例变量;
[*] 类体中,所有函数内部:以“变量名=变量值”的方式定义的变量,称为局部变量。


Ps: __init__ 不能设置返回值,所以你要把return 去掉

interest_rate 明显在类中 所有函数外,所以是类变量

实例变量 以 ‘self.变量名’ 命名方式 所以 :
self.name = name
self.number = number
self.balance = balance
这三都是实例变量

不懂是不是你的意思:
class BankAccount(object):
    interest_rate = 0.3

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

    def deposit(self,add_balance):
      self.balance += add_balance
      return '余额:'+str(self.balance)

    def withddraw(self,sub_balance):
      self.balance -= sub_balance
      return '余额:'+str(self.balance)

b = BankAccount('小黄',100,500)
print(b.balance)
b.deposit(500)
print(b.balance)
b.withddraw(300)
print(b.balance)
页: [1]
查看完整版本: 小白求助 python关于银行转账问题