Python五种下划线区别

本来而言,这个问题网上很多资料,但是网上资料都是复制来复制去,很多话大家其实都不是很明白的,或者拿着官方文档翻译过来的,让人看的非常迷糊。今天我我通俗好懂表述解释下这几种情况

 

1、后单下划线例如: data_

其实这种就是为了防止跟系统关键字重名了,比如 python 里是不是有个关键字 class
但是我也想用 class做变量怎么办,如果不做处理肯定是不行的有冲突
所以我们在后面添加 _ 变成 class_, 就可以用了。

我觉得但凡懂点编程的人都能明白这个

 

2、前单下划线例如: _data

这种其实就是为了告诉程序员,这个为内部使用的变量,不要再外部使用,仅在内部使用,就是为了设置一个提示,但是外部还是可以用。只是告诉程序员最好不要再外部使用,如果是函数,也是同样的道理。

在这里插入图片描述

看到没,系统不会提示出来,但是强制写上去也是可以用的

 

3、前双下划线例如: __data

这种就更简单了,其实就是私有的变量和函数,子类不能用,一用就报错。

在这里插入图片描述

看到没,就这么简单

 

4、前后双下划线: __data__

这种类型的其实就是Python内部调用的,我们根本就不用管怎么调用,比如:

在这里插入图片描述

这种就是系统内部调用的,这些函数都是在我们调用其他函数,在内部使用到了他们,比如这里 的 __init __就是一个构造函数,我们在调用 Person() 自然在内部调用到了他,再比如我们调用的 len() 内部也会调用类似的函数,我们知道就好。

 

5、单下划线例如: _

1、这个其实也是一个变量,表示一个临时对象

for _ in “hongbiao”: 这种情况就跟普通变量没有关系

2、表示程序中运行的最近一个结果,我上一个图大家明白了

在这里插入图片描述

注意,这里的 _ 如果在前面赋值了就不能再取最近的结果了

 

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程宝库的更多内容!

 前言opencv的鼠标交互操作主要通过两个函数实现: 第一个是cv2.setMouseCallback(windowName, onMouse [, param]) 第二个是se ...