韩漫免费漫画在线观看方法,《好好疼爱里面》免费看,年轻漂亮的女士护士内衣,妈妈醉酒后把我当爸爸电视剧

文章 > Python基础教程 > python入门必会的助手函数:dir()函数

python入门必会的助手函数:dir()函数

头像

silencement

2019-07-18 09:15:523375浏览 · 0收藏 · 0评论

今天我们来看一个非常重要的函数:dir()

中文说明:不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),该方法将被调用。如果参数不包含__dir__(),该方法将限度地收集参数信息。

参数object: 对象、变量、类型。

版本:该函数在python各个版本中都有,但是每个版本中显示的属性细节有所不同。使用时注意区别。

英文说明:

dir([object])

Without arguments, return the list of names in the current local scope. With an argument, attempt to return a list of
 valid attributes for that object.

If the object has a method named __dir__(), this method will be called and must return the list of attributes. This
 allows objects that implement a custom __getattr__() or __getattribute__() function to customize the way dir()
  reports their attributes.

If the object does not provide __dir__(), the function tries its best to gather information from the object’
s __dict__ attribute, if defined, and from its type object. The resulting list is not necessarily complete, and may be
 inaccurate when the object has a custom __getattr__().

The default dir() mechanism behaves differently with different types of objects, as it attempts to produce the most 
relevant, rather than complete, information:

If the object is a module object, the list contains the names of the module’s attributes.

If the object is a type or class object, the list contains the names of its attributes, and recursively of the 
attributes of its bases.

Otherwise, the list contains the object’s attributes’ names, the names of its class’s attributes, and recursively
 of the attributes of its class’s base classes.

例如

>>>import struct
>>>dir()  # show the names in the module namespace
['__builtins__','__doc__','__name__','struct']
>>>dir(struct)  # show the names in the struct module
['Struct','__builtins__','__doc__','__file__','__name__',
 '__package__','_clearcache','calcsize','error','pack','pack_into',
 'unpack','unpack_from']
>>>class Shape(object):
        def __dir__(self):
            return ['area','perimeter','location']
>>> s= Shape()
>>>dir(s)
['area', 'perimeter', 'location']
Note Because dir() is supplied primarily as a convenience for use at an interactive prompt, it tries to supply an 
interesting set of names more than it tries to supply a rigorously or consistently defined set of names, and its 
detailed behavior may change across releases. For example, metaclass attributes are not in the result list when the 
argument is a class.

代码实例

>>>dir()
['__builtins__','__doc__','__name__','__package__']
>>>import struct
>>>dir()
['__builtins__','__doc__','__name__','__package__','struct']
>>>dir(struct)
['Struct','__builtins__','__doc__','__file__','__name__','__package__','_clearcache','calcsize','error','pack',
'pack_into','unpack','unpack_from']
>>>class Person(object):
...    def __dir__(self):
...            return ["name","age","country"]
...
>>>dir(Person)
['__class__','__delattr__','__dict__','__dir__','__doc__','__format__','__getattribute__','__hash__','__init__',
'__module__','__new__','__reduce__','__reduce_ex__','__repr__','__setattr__','__sizeof__','__str__','__subclasshook__',
'__weakref__']
>>> tom= Person()
>>>dir(tom)
['age','country','name']
关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

汗汗画画免费阅读在线阅读| 《冲动的惩罚》免费全集| 杨贵妃(台湾绝版)| 老阿姨高清免费观看电视剧| 公天天吃我奶躁我的在| 下面的小嘴又饿了| 庄锶敏| 公厕被偷窃视频大全| 女人被濯满精子后多久排卵期 | 双人打扑克剧烈运动视频| 大龟慢慢挺进女友闺蜜的体内视频| 教室停电 挺进她体内H| 黑色蕾丝女装大长腿| 《肉体暴力强伦轩》| 快拨出天我是你母亲歌词监控| 97人妻人人躁人人玩人人澡AV| 妈妈的朋友5| 美女和男生一起努力的生孩子视频.. | 妻子的肉体偿还》5| 《合租男女》电视剧韩国| 憋尿白丝小肚子凸起高冷知乎| 美国大片免费观看2022年上映| 十大禁片| 小妖精你真要我的命| 《完美邻居2》电影在线观看| 家乱战1-13集大| 免费观看大片哔哩哔哩| 《高压监狱5》完整版| 《黏糊糊的你》动漫免费观看| 扌吴辶鬲的背景故事| 伦理《少妇的滋味》完整版| 韩漫网站| 东野圭吾信| 国产偷窥熟妇高潮呻吟视频AV| 小叔子从后面抱住女主电视剧 | 国精产品偷偷偷拍XXXX| 天美麻花星空高清MV播放音乐| 《灭火宝贝2》美国版| 《办公室高潮秘书2》| BOBO浏览器| 机械师3