标签:__ room Python self userId 对象 实例 user print
起步
当需要if obj 或者 not obj判断一个实例对象的真假时,Python解释器会优先调用魔法方法__bool__()。如果没有该方法,就调用__len__()。如果两个方法都没有,总是返回True
- __bool__()方法仅支持返回布尔值
- __len__()方法仅支持返回>=0的整数
示例
#!/usr/bin/env python # -*- coding: utf-8 -*- # @time: 2022/6/6 8:13 下午 class Room(object): def __init__(self): self.roomId = 0 class User(object): def __init__(self): self.userId = 0 def __len__(self): return self.userId user = User() if user: print('user对象', True, user.userId) else: print('user对象', False, user.userId) room = Room() if room: print('room对象', True, room.roomId) else: print('room对象', False, room.roomId)
标签:__,room,Python,self,userId,对象,实例,user,print 来源: https://www.cnblogs.com/root0/p/16349587.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。