码迷,mamicode.com
首页 > 编程语言 > 详细

python魔法函数之__getitem__

时间:2018-12-10 22:38:21      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:迭代   结果   pre   python类   init   for循环   函数   存在   pytho   

魔法函数会增强python类的类型,独立存在
class Company:
    def __init__(self, employees):
        self.employees = employees

    def __getitem__(self, item):
        return self.employees[item]


company = Company([‘a‘, ‘b‘, ‘c‘])
for val in company:
    print(val)
company1 = company[:2]
for val in company1:
    print(val)

结果:
a
b
c
a
b
for循环迭代时,如果对象不具有iterator接口,就会调用类的__getitem__魔法函数(前提是定义了),上述的__getitem__把类变成了序列,所以可切片可遍历

python魔法函数之__getitem__

标签:迭代   结果   pre   python类   init   for循环   函数   存在   pytho   

原文地址:https://www.cnblogs.com/raind/p/10099521.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!