python 类中的单下划线和双下划线的意义

简介:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#"单下划线" 开始的成员变量叫做保护变量,意思是只有类对象和子类对象自己能访问到这些变量;
#"双下划线" 开始的是私有成员,意思是只有类对象自己能访问,连子类对象也不能访问到这个数据。
 
class  Pub( object ):
 
     var1  =  'hello'
     _var2  =  'yes'
     __var3  =  'hah'
 
     def  __init__( self ):
         self ._a  =  123
         self .__b  =  456
         self .c  =  789
 
     def  show_a_var( self ):
         return  self ._a
 
     def  show_b_var( self ):
         return  self .__b
 
     def  show_var2( self ):
         return  self ._var2
 
     def  show_var3( self ):
         return  self .__var3
 
class  Foo(Pub):
     pass
 
print (Pub.var1)
 
sl  =  Pub()
print (sl.c)
print (sl.show_a_var())
print (sl.show_b_var())
 
print (sl.show_var2())
print (sl.show_var3())
 
fa  =  Foo()
print (fa._var2)
print (fa.var1)
print (fa.show_a_var())
print (fa.show_var2())


本文转自 TtrToby 51CTO博客,原文链接:http://blog.51cto.com/freshair/1930129

相关文章
|
1月前
|
程序员 Python
【随手记】python中各类下划线的作用与功能
【随手记】python中各类下划线的作用与功能
32 0
|
27天前
|
缓存 监控 程序员
Python中的装饰器是一种特殊类型的声明,它允许程序员在不修改原有函数或类代码的基础上,通过在函数定义前添加额外的逻辑来增强或修改其行为。
【6月更文挑战第30天】Python装饰器是无侵入性地增强函数行为的工具,它们是接收函数并返回新函数的可调用对象。通过`@decorator`语法,可以在不修改原函数代码的情况下,添加如日志、性能监控等功能。装饰器促进代码复用、模块化,并保持源代码整洁。例如,`timer_decorator`能测量函数运行时间,展示其灵活性。
21 0
|
3天前
|
Python
Python中使用类和对象
【7月更文挑战第23天】
12 6
|
8天前
|
程序员 Python
python中那些双下划线开头得函数和变量
python中那些双下划线开头得函数和变量
15 2
|
8天前
|
SQL 分布式计算 大数据
MaxCompute产品使用合集之PyODPS Python类的开发如何用MC的资源
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
1月前
|
存储 缓存 Python
深入了解python中元类和连接符的用法
【6月更文挑战第20天】本文介绍包括`type`的多重用途,内建函数的常量,模块属性,类继承的概念,元类的工作原理,可哈希对象的重要性,加权平均值的计算,以及如何找到两个列表的交集。
63 5
深入了解python中元类和连接符的用法
|
24天前
|
存储 JSON 测试技术
python中json和类对象的相互转化
针对python中类对象和json的相关转化问题, 本文介绍了4种方式,涉及了三个非常强大的python库jsonpickle、attrs和cattrs、pydantic,但是这些库的功能并未涉及太深。在工作中,遇到实际的问题时,可以根据这几种方法,灵活选取。 再回到结构化测试数据的构造,当需要对数据进行建模时,也就是赋予数据业务含义,pydantic应该是首选,目前(2024.7.1)来看,pydantic的生态非常活跃,各种基于pydantic的工具也非常多,建议尝试。
|
1月前
|
算法 Python
Python新式类和经典类
Python新式类和经典类
|
1月前
|
安全 测试技术 Python
Python类中的Setter与Getter:跨文件调用的艺术
Python类中的Setter与Getter:跨文件调用的艺术
17 3
|
1月前
|
SQL 分布式计算 大数据
MaxCompute产品使用问题之建了一个python 的 UDF脚本,生成函数引用总是说类不存在,是什么导致的
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。