Python模块内置属性详解与实例演示
本文详细解析Python模块中的内置属性,包括__doc__、__name__、__file__等常用属性及其作用。通过import导入方式、dir()方法获取属性列表以及具体代码实例,帮助开发者深入理解模块内部机制,掌握查看和使用内置属性的技巧。
在讨论Python模块时,部分开发者容易将内置属性误认为普通函数,二者存在本质区别,此处需明确界定。这些内置属性通常以双下划线包裹,是Python模块内部机制的体现。下文将对内置属性进行详细说明,列举几种常见的内置属性方法,并提供具体实例供参考。
1、说明
一种常见的导入方式是利用import语句,将模块内的函数或变量名称直接引入到当前操作的模块中。
2、内置属性
- __doc__:用于存储模块描述信息的文档字符串。
- __name__:表示当前模块的名称。
- __file__:记录模块文件保存的完整路径。
- __dict__:包含类属性的字典,由类的数据属性组成。
- __module__:指示类定义所在的模块名称。例如,若类位于导入模块mymod中,则className.__module__的值等于mymod;若类在__main__中定义,则其全名为'__main__.className'。
- __bases__:包含类所有父类元素的元组,用于表示类的继承关系。
3、实例
print(__doc__)
print(__file__)
print(__name__)
内容扩展:
查看模块的内置属性
# test.py
# -*- coding: utf-8 -*-
"""
some doc
"""
import os
var1 = None
class Person(object):
pass
if __name__ == "__main__":
print(dir()) # ['Person', '__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'os', 'var1']
利用dir()方法可以获取模块中所有显式或隐式的属性及方法。执行后可以看到隐式属性包括__annotations__、__builtins__、__cached__、__doc__、__file__、__loader__、__name__等。
接下来打印每个魔法属性的具体值:
print(__name__) # __main__
print(__annotations__) # {}
print(__builtins__) # <module 'builtins' (built-in)>
print(__cached__) # None
print(__doc__) # some doc
print(__file__) # .../test.py
print(__loader__) # <_frozen_importlib_external.SourceFileLoader object at 0x000002398E831F28>
print(__package__) # None
print(__spec__) # None
# 其中__name__、__doc__、__file__、__package__是可以直接使用的,其它的内置属性一般不允许直接使用。
至此,关于Python模块内置属性概念及实例的介绍完毕。如需了解更多关于Python模块内置属性的内容,建议查阅本站过往文章或继续浏览后续相关文章,感谢支持。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













