变量
#!-*-coding:utf-8-*-#__author__ = 'ecaoyng'# # 变量#_xxx,单下划线开头的变量,标明是一个受保护(protected)的变量,原则上不允许直接访问,但外部类还是可以访问到这个变量。 #这只是程序员之间的一个约定,用于警告说明这是一个私有变量,外部类不要去访问它。 class Student: def __init__(self, name, age): self._name = name self.age=age stu=Student('Alvin','30') #当要输入_name时,pycharm不会进行_name的提示 print(stu._name) #当要显示age时,pycharm会进行age的提示 print(stu.age) #output: #Alvin #30 # __xxx,双下划线开头的,表示的是私有类型(private)的变量。 # 只能是允许这个类本身进行访问了, 连子类也不可以. # 用于命名一个类属性(类变量),调用时名字被改变 #(在类Student内部,__name变成_Student__name,如 self._Student__name) # 双下划线开头的实例变量是不是一定不能从外部访问呢?其实也不是。仍然可以通过_Student__name来访问__name变量: class Person: def __init__(self, name): self.__name=name per=Person('Young') print(per._Person__name) #output: Young #__xxx__,以双下划线开头,并且以双下划线结尾的,是内置变量. # 内置变量是可以直接访问的,不是 private 变量,如__init__,__import__或是__file__。 # 所以,不要自己定义这类变量 #xxx_,单下划线结尾的变量一般只是为了避免与 Python 关键字的命名冲突 #USER_CONSTANT,大写加下划线,对于不会发生改变的全局变量,使用大写加下划线
函数
#函数#总体而言应该使用,小写和下划线。但有些比较老的库使用的是混合大小写,即首单词小写,之后每个单词第一个字母大写,其余小写。# 但现在,小写和下划线已成为规范#私有方法 : 小写和一个前导下划线 #这里和私有变量一样,并不是真正的私有访问权限。 # 同时也应该注意一般函数不要使用两个前导下划线(当遇到两个前导下划线时,Python 的名称改编特性将发挥作用)。特殊函数后面会提及。 class privateC: def _secrete(self): print('Don\'t test me') priC=privateC() priC._secrete() #特殊方法 : 小写和两个前导下划线,两个后置下划线 #这种风格只应用于特殊函数,比如操作符重载等。 def __add__(self, other): return int.__add__(other) #函数参数 : 小写和下划线,缺省值等号两边无空格 def connect(self, user=None): self._user = user
推荐
#推荐#一行列数 : PEP 8 规定为 79 列,这有些苛刻了。根据自己的情况,比如不要超过满屏时编辑器的显示列数。这样就可以在不动水平游标的情况下,方便的查看代码。#一个函数 : 不要超过 30 行代码, 即可显示在一个屏幕类,可以不使用垂直游标即可看到整个函数。#一个类 : 不要超过 200 行代码,不要有超过 10 个方法。#一个模块 不要超过 500 行。 # easy_install pep8 # pep8 -r --ignoire E501 Test.py # 这个命令行的意思是,重复打出错误,并且忽略 501 错误(代码超过 79 行)。