4 + 3
7
_
7
_ + 2
9
a = 10
_
9
2、代码中一个独立的下划线,表示这个变量不重要
一个独立的下划线,它也是一个变量名,只不过它比较特殊,当你使用下划线作为变量名时,就代表你告诉大家,这个变量不重要,仅仅占个位置,可以忽略,后面不会再使用它。
当然了,这只是一种约定俗成,你要是不遵守也是可以的,毕竟在后面你还可以通过下划线来获取这个变量的值。
for i, _ in [(1, 2), (3, 4)]:
print(i)
上面的代码表示我们只需要列表内部元组的第一个,第二个其实赋值给了下划线,虽然后面你可以通过下滑线来取到值,但是强烈建议你不要这么做,这违反了约定。
3、类的内部,双下划线作为变量名或函数名的开头,表示私有
私有变量或函数,只能在类的内部来使用,不可在外部访问或更改,比如,在 module_b.py 中有一个类 A,类 A 有一个双下划线开头的变量名:
class A:
__private_var = 1000
def init(self) -> None:
self.__private_var2 = 2000
self.var3 = 3000
当我们在另一个文件中引用 A 时,就无法访问到私有变量:
import module_b
if name == ‘main’:
a = module_b.A()
print(a.__private_var)
这里会报错
当然了,如果你一定要访问,也是可以的,只需在私有变量前加个_类名
,比如上面的代码中改为 print(a._A__private_var) 就可以正确打印 1000。
不能直接访问 __private_var
是因为 Python 解释器对外把__private_var
变量改成了_A__private_var
:
感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!