模块
- 模块尽量使用小写
import numpy import os import pandas import sklearn
类名
- 驼峰命名法(Camel-Case)
class Split(): pass class StratifiedShuffleSplit(): pass
函数
- 小写,多个单词用下划线隔开
def prediction(): pass def prediction_by_linear(): pass
- 私有函数:在函数名前加一个_,这只是一种约定,不会被 from module import * 语句导入,但是在类外可以访问
class LinearRegression(): def _private_function(): pass
变量名
- 普通变量
- 小写,多个单词用下划线隔开
train_set, test_set = train_test_split(housing, test_size=0.2, random_state=42)
- 系统变量
- 前后有下划线的变量名(__x__)是系统定义的变量名,对python 解释器有特殊意义
__name__ __doc__ __class__
- 保护成员(属性/方法)
- 能用from module import * 导入,其他方面和公有一样访问;
- import module可以获取
- 单下划线开头
- 只有类对象和子类对象自己能访问到这些变量
_post
- 私有变量
- 双下划线开头
- 只允许类本身访问,子类也不行
- python无法禁止别人访问对象的私有方法和属性
- 如果想访问Demo中的__private_function(),可以使用
- test = Demo()
- test._Demo__private_function()
__length_name __path class Demo: def __private_function(self): print("这是一个私有函数")
- 单下划线结尾
- 无特殊含义,为了与python关键字区分开
class_ = 1
常量
- 全大写,多个单词用下划线隔开
MAX_AGE = 150 MIN_AGE = 0