Python - 命名规范

高洛峰
发布: 2016-10-19 17:08:27
原创
1756人浏览过

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

全小写+下划线式驼峰

example:this_is_var

二,全局变量

全大写+下划线式驼峰

立即学习Python免费学习笔记(深入)”;

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 模块中代码如下:

#module_2_error
 '''
 以下划线开头的变量不会别导入
 '''
  from module_1 import *
    
  print var_1
  print _var_2  #将报错
  print __var_3  #将报错
登录后复制

   

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

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

#module_2_solution
   
 from module_1 import *  # 导入所有的不是下划线开头的对象
   
 from module_1 import _var_2, __var_3 # 显式导入下划线开头的对象
   
 print var_1
 print _var_2 # 不会报错
 print __var_3  # 不会报错
登录后复制

   

example for 2:

#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  # 这里将会出错
登录后复制

   

需要定义函数来获取双下划线开头的变量

#module_solution
  
'''
需要定义函数来获取双下划线开头的变量
'''
  
class MyClass():
    def __init__(self):
        self.var_1 = 1
        self._var_2 = 2
        self.__var_3 = 3
          
    def get_var_3(self):
        return self.__var_3
          
      
  
if __name__=="__main__":
    obj = MyClass()
    print obj.var_1
    print obj._var_2
    print obj.get_var_3()  # 不会再报错
登录后复制

   

四,其他要注意的

不要像c等语言里面一样去用开头字母标识变量类型(如 iValue),因为python在解释的时候才确定类型。

因为异常也是一个类,所以遵守类的命名规则。此外,如果异常实际上指代一个错误的话,应该使用“Error”做后缀。

命名应当尽量使用全拼写的单词,缩写的情况有如下两种:常用的缩写,如XML、ID等,在命名时也应只大写首字母,如XmlParser。命名中含有长单词,对某个单词进行缩写。这时应使用约定成俗的缩写方式。例如:function 缩写为 fn, text 缩写为 txt, object 缩写为 obj, count 缩写为 cnt, number 缩写为 num 等。

类实例方法第一个参数使用self, 类方法第一个参数使用cls

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号