鱼C论坛

 找回密码
 立即注册
查看: 587|回复: 2

[已解决]小白求助 python关于银行转账问题

[复制链接]
发表于 2020-6-2 10:38:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
下面的程序是代表银行的转账
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()方法以减少余额。
最佳答案
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
这三都是实例变量

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

  3.     def __init__(self, name, number, balance):
  4.         self.name = name
  5.         self.number = number
  6.         self.balance = balance

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

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

  13. b = BankAccount('小黄',100,500)
  14. print(b.balance)
  15. b.deposit(500)
  16. print(b.balance)
  17. b.withddraw(300)
  18. print(b.balance)
复制代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-2 10:42:12 | 显示全部楼层
1、interest_rate = 0.3 类变量;name, number, balance 实例变量。

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

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 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
这三都是实例变量

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

  3.     def __init__(self, name, number, balance):
  4.         self.name = name
  5.         self.number = number
  6.         self.balance = balance

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

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

  13. b = BankAccount('小黄',100,500)
  14. print(b.balance)
  15. b.deposit(500)
  16. print(b.balance)
  17. b.withddraw(300)
  18. print(b.balance)
复制代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-26 22:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表