BAPPS 2022-11-16 08:41 采纳率: 87%
浏览 8
已结题

python类代码分析

 1.class Account:
def init (self,id):
self.id = id; id = 999
ac = Account(1000)
print(ac.id)
2.class Account:
def init (self, id, balance):
self.id = id
self.balance = balance
def deposit(self, amount):
self. balance += amount
def withdraw(self, amount):
self. balance -= amount
acc = Account('abcd', 200)
acc.deposit(600)
acc.withdraw(300)
print(acc.balance)
请简单分析这两个代码,没看懂为啥第一个结果是1000第二个一个结果是500

  • 写回答

3条回答 默认 最新

  • ·星辰大海 2022-11-16 08:56
    关注

    第一个实例化的时候就已经给成员变量赋值1000了,而后面的id=999只对本地变量操作不对成员变量修改
    第二个几个函数都对成员变量进行操作初始化时是200,然后加600 再减去300就是500

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月24日
  • 已采纳回答 11月16日
  • 创建了问题 11月16日

悬赏问题

  • ¥15 孟德尔随机化结果不一致
  • ¥20 求用stm32f103c6t6在lcd1206上显示Door is open和password:
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法