python定义类中特殊函数

# # 基于可迭代对象&生成器 实现:自定义输出被2整除的数
#
# class Xrange(object):
#     def __init__(self, max_num):
#         self.max_num = max_num
#
#     def __iter__(self):
#         counter = 0
#         while counter < self.max_num:
#             yield counter
#             counter += 2
#
#
# obj = Xrange(100)
# for item in obj:
#     print(item)

# 上下文管理
# class Foo(object):
#
#     def __enter__(self):
#         print("进入了")
#         return 666
#
#     def __exit__(self, exc_type, exc_val, exc_tb):
#         print("出去了")
#
#
# obj = Foo()
# with obj as data:
#     print(data)

# 生成字典
# class Foo(object):
#     def __init__(self, name, age):
#         self.name = name
#         self.age = age
#
#
# obj = Foo("武沛齐", 19)
# print(obj.__dict__)

# 根据索引值取值
# class Foo(object):
#
#     def __getitem__(self, item):
#         pass
#
#     def __setitem__(self, key, value):
#         pass
#
#     def __delitem__(self, key):
#         pass
#
#
# obj = Foo("武沛齐", 19)
#
# obj["x1"]
# obj['x2'] = 123
# del obj['x3']
posted @ 2021-08-14 14:54  wq512  阅读(107)  评论(0编辑  收藏  举报