python 名称前的单下划线
单前导下划线 _var
1.特点一
在PEP8约定中定义,以单个下划线开头的变量或方法仅供内部使用。用于指定该名称属性为“私有”。为了使其他人(或你自己)使用这些代码时将会知道以“_”
开头的名称只供内部使用
这个在python中并非是一种强制规定,程序的行为不受影响。只为提示其他程序员这个变量或方法只在内部使用。不像Java那样有 私有 和 公有变量强制的区别开。
以下划线“_”
为前缀的名称(如_spam)应该被视为API中非公开的部分(不管是函数、方法还是数据成员)。此时,应该将它们看作是一种实现细节,在修改它们时无需对外部通知。
2.特点二
那么以“_”开头的名称都不会被导入
正如上面所说,这确实类似一种惯例,因为它对解释器来说确实有一定的意义,如果你写了代码“from <模块/包名> import ”,那么以“_”开头的名称都不会被导入,除非模块或包中的“__all__”
列表显式地包含了它们。
3.特点三
python中单下划线和其它语言一样用来表示这个变量是临时的或无关紧要的,抛弃掉这个值。
4.其他特点 (待挖掘)
参考
https://blog.csdn.net/nockinonheavensdoor/article/details/80603572