代码拉取完成,页面将自动刷新
# -*- coding:utf-8 -*-
"""property"""
__author__ = 'Eddie Chow'
import datetime
class Student(object):
def __init__(self, name):
self.name = name
def __str__(self):
return 'Student object (name:%s)' % self.name
__repr__ = __str__
# 返回不存在的属性
def __getattr__(self, item):
if item == 'score':
# 默认值
return 99
if item == 'age':
# 返回函数,调用方式为 age()
return lambda: datetime.datetime.now().year - 1990
# 默认会返回 None,这样的话就会返回一个属性异常
raise AttributeError('Student object has no attribute %s' % item)
class Fib(object):
def __init__(self):
self.a, self.b = 0, 1
def __iter__(self):
return self
def __next__(self):
self.a, self.b = self.b, self.a + self.b
if self.a > 100:
raise StopIteration()
return self.a
if __name__ == '__main__':
s = Student('Eddiechow')
# 默认调用 __str__方法
print(s)
# for n in Fib():
# print(n)
f = Fib()
print(f.__next__())
print(f.__next__())
print(f.__next__())
print(f.__next__())
print(f.__next__())
# s = Student('Eddie')
# print(s.name, s.score, s.age(), s.abc)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。