VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • Python基础 - 命名规范

一,包名、模块名、局部变量名、函数名

全小写+下划线式驼峰

example:this_is_var

二,全局变量

全大写+下划线式驼峰

example:GLOBAL_VAR

三,类名

首字母大写式驼峰

example:ClassName()

四,关于下划线

以单下划线开头,是弱内部使用标识,from M import * 时,将不会导入该对象(python 一切皆对象)。

以双下划线开头的变量名,主要用于类内部标识类私有,不能直接访问。模块中使用见上一条。

双下划线开头且双下划线截尾的命名方法尽量不要用,这是标识

example for 1:

module_1 模块中定义变量 var_1, _var_2, __var_3

#module_1

var_1

_var_2

__var_3

module_2 模块中代码如下:

1
2
3
4
5
6
7
8
9
#module_2_error
 '''
 以下划线开头的变量不会别导入
 '''
  from module_1import *
   
  print var_1
  print _var_2 #将报错
  print __var_3 #将报错

 

执行到第6,7行将会报错,因为凡是以下划线开头的对象都不会被导入。

既然是弱内部使用标识,就还是有使用办法的,只需单独导入即可:

1
2
3
4
5
6
7
8
9
#module_2_solution
  
 from module_1import *  # 导入所有的不是下划线开头的对象
  
 from module_1import _var_2, __var_3# 显式导入下划线开头的对象
  
 print var_1
 print _var_2# 不会报错
 print __var_3 # 不会报错

 

example for 2:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#module_error
 '''
 双下划线开头的变量不能被直接访问
 '''
  
 class MyClass():
     def __init__(self):
         self.var_1= 1
         self._var_2= 2
         self.__var_3= 3
      
 if __name__=="__main__":
     obj= MyClass()
     print obj.var_1
     print obj._var_2
     print obj.__var_3 # 这里将会出错

相关教程