在Python中,属性自省是一种强大的特性,它允许我们在运行时检查和操作对象的属性。在本文中,我们将探讨Python中的属性自省,并结合实际场景和代码来展示其用法。

1. 私有属性与访问限制

Python中的私有属性是指以下划线开头的变量或方法,例如_name或_method()。尽管这种命名约定并非强制性的,只是一种惯例,但它用于提示该属性或方法应该只在类内部使用,而不应该在外部直接访问。

Python中的私有属性具有以下特点:

私有属性不能被外部直接访问,但可以通过类内部的方法间接地访问。

在类内部定义的方法可以访问所有属性,包括私有属性,因为它们都在同一个作用域内。

子类无法继承父类的私有属性,但可以通过公有方法来访问父类的私有属性。

接下来勇哥带你探讨如何访问和修改私有属性:

class YongeGe:
    name= '勇哥' # 普通属性
    _ager = 100   # 普通属性
    __money = 109  # 私有属性
    __money_empty__ = 1  # 不推荐做法

yongge = YongeGe()
print(yongge .name)  # 输出: 勇哥
print(yongge ._ager )  # 输出: 100
print(yongge ._YongeGe__money )  # 输出: 109  
print(yongge .__money_empty__ )  # 输出: 1
print(yongge .__money )  # 输出: AttributeError: 'YongeGe' object has no attribute '__money'
本站提供的所有下载资源均来自互联网,仅提供学习交流使用,版权归原作者所有。如需商业使用,请联系原作者获得授权。 如您发现有涉嫌侵权的内容,请联系我们 邮箱:[email protected]