【命名规范】
模块名:小写字母,单词之间用_分割;例如:ad_stats.py
包名:和模块名一样
类名:单词首字母大写;例如:ConfigUtil
全局变量名:大写字母,单词之间用_分割;例如:NUMBER,COLOR_WRITE
普通变量:小写字母,单词之间用_分割;例如:this_is_a_var
类实例变量:以_开头,其他和普通变量一样;例如:_price,_instance_var
私有实例变量:以__开头(2个下划线),其他和普通变量一样;例如:__private_var
专有变量:__开头,__结尾,一般为python的自有变量,不要以这种方式命名;例如:__doc__,__class__
函数名:和普通变量一样;例如:count_number(),get_name()
私有函数(外部访问会报错):以__开头(2个下划线),其他和普通函数一样;例如:__get_name()
【类1:类】
#!/usr/bin/python # -*- coding:UTF-8 -*- class Dog(): #construct #类变量可以不用显式定义在类的头部 但是最好不要这样做 #类变量不显式区分public 和 private, 隐式规则:变量前缀是__,则表示该变量是private变量,否则为public def __init__(self, name, age): self.name = name self.age = age def sit(self): print(self.name.title() + " is now sitting") def roll_over(self): print(self.name.title() + " rolled over") dog = Dog("dabai", 10) dog.sit() dog.roll_over(); print dog.name
【类2:继承】
#!/usr/bin/python # -*- coding:UTF-8 -*- class Animal(): def __init__(self, animal_type, name): self.animal_type = animal_type; self.name = name; class Dog(Animal): def __init__(self, name, age): self.name = name #python2的语法 #python3的语法: super().__init__(param1, param2, ...) Animal.__init__(self, "reptiles", name) self.age = age self.animal_type = "reptiles" def sit(self): print(self.name.title() + " is now sitting") def roll_over(self): print(self.name.title() + " rolled over") dog = Dog("dabai", 10) dog.sit() dog.roll_over(); print dog.name print dog.animal_type
【字典】
#!/usr/bin/python #unordered dict a = {'a':'a', 'b':'b', 'c': 'c'} for val in a: print val #ordered dict from collections import OrderedDict a = OrderedDict() a['a'] = 'a' a['b'] = 'b' a['c'] = 'c' a['test'] = 'test' for key, val in a.items(): print key, val
默认的字典是无序的,需要定义有序字典可参考OrderedDict
【unittest】
参考链接:https://docs.python.org/3/library/unittest.html