鱼C论坛

 找回密码
 立即注册
查看: 5184|回复: 0

[学习笔记] 双向绑定机制

[复制链接]
发表于 2022-7-15 12:24:07 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 King丨小义 于 2022-12-23 11:03 编辑

其实本质上就是想办法把number变成self.number
让代码看起来更加舒适

  1. number = 18

  2. class Person():
  3.   def __init__(self):
  4.     # self.age='xxx'  # 注意这地方不能再赋值,否则会调用__setattr__方法
  5.     pass
  6.   
  7.   def __getattr__(self, key):
  8.     if key == 'age':
  9.       self.age = number
  10.       return number
  11.   
  12.   def __setattr__(self, key, value):
  13.     if key == 'age':
  14.       global number
  15.       number = value

  16. p = Person()
  17. print(p.age)  # 18
  18. # --修改p.age, 则number会跟着更改
  19. p.age = 19
  20. print(p.age)   # 19
  21. print(number)  # 19

  22. # --修改number, 则p.age会跟着更改
  23. number = 20
  24. print(p.age)  # 20
  25. print(number) # 20
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-12 19:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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