Python模块内置属性详解与实例演示

橘子海
橘子海
发布时间:2026-10-14| 5人浏览过
原创

本文详细解析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模块内置属性的内容,建议查阅本站过往文章或继续浏览后续相关文章,感谢支持。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。