python的命名规则知识点总结


Posted in Python onOctober 04, 2019

python命名规则

命名风格

python几种不同命名风格

驼峰式命名法(WjW)

混合式命名法(wjWj)

大写(WJWJWJ)或大写加下划线(WJWJWJ)

前缀(wjing)或后缀(ingwj)下划线,有时双下划线

变量

python变量分为:

(1)常量

(2)公有和私有变量

1.常量

常量全局变量,使用大写加下划线。指定的变量表示一个常数值。

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(file)))

2.命名和使用

常量定义的是一组值,程序需要依赖的一组不变值,大多数就是配置文件名,最好的做法是将所有常量放到一个文件中,例如django的settings文件。

SECRET_KEY = '(5hjjo=-=r1s43d+=yu(ay2vy_pe53ut0kzd5skzxa9@5#qf_x'

# SECURITY WARNING: don't run with debug turned on in production!

DEBUG = True

ALLOWED_HOSTS = []

# Application definition

INSTALLED_APPS = [

  'django.contrib.admin',

  'django.contrib.auth',

  'django.contrib.contenttypes',

  'django.contrib.sessions',

  'django.contrib.messages',

  'django.contrib.staticfiles',

  'helloapp',

]

也可以使用Configparser模块创建配置文件。这种没有上一种好。

一段很好的像标记的代码,可以给定一些是无标记属性等。

OPTIONS={}

def register_option(name):

  return OPTIONS.setdefault(name,1<<len(OPTIONS))#bin(len(OPTIONS))查看二进制数据 

def has_option(options,name):

  return bool(options&name)

#定义标签 

BLUE=register_option('BLUE')

RED=register_option('RED')

YELLOW=register_option('YELLOW')

#设置标签 

SET=BLUE|RED

#判断标签是否存在设置中 

has_option(SET,BLUE)

has_option(SET,YELLOW)

3.公有和私有变量

对于可变的且可以通过导入自由访问的全局变量,如果它们需要被保护,那么应该使用下划线加小写字母变成私有变量。

4.函数和方法

函数和方法尽量使用小写加下划线,有些情况也使用混合大小写。

5.私有元素的正义

对于私有方法和函数,通常是前缀两个下划线,这样在运行时会被解释器重命名,这样可以避免与任何子类冲突。举例说明:

class Base(object):

  def __secret(self):

    print("don't tell")

  def public(self):

    self.__secret()

class Top(Base):

  def __secret(self):

    print("never say never")

print(dir(Base))

b=Base()

b._Base__secret()

print(dir(Top))

Top().public()

#输出 

['_Base__secret',..., 'public']

don't tell

['_Base__secret', '_Top__secret', ..., 'public']

don't tell

这样就会重命名带有双下划线的函数和方法。

6.特殊方法

特殊方法就是使用双下划线开始和结尾,常规的方法不应该使用这样的写法。

def __init__(self):

  pass 

def __add__(self):

  pass

7.参数

参数都是用小写,有时可以加下划线。

8.property

属性都是用小写或小写加下划线。

9.类

类名使用驼峰法WjWj。

10.模块和包

模块通常都是小写,不带下划线,出了特殊的如init模块,如果模块是包的私有模块会使用前缀加一个下划线。包也是一样。

命名

用'has'或'is'前缀命名布尔元素

is_life=True#是否活着

is_connected=True#是否连接 

has_cache=True#是否有内存

复数命名集合

users=['zhangsan','lisi']

显示命名字典

个人地址用全称

persons_addresses={'zhangsan':'beijing','lisi':'shanghai'}

类的名称

类的名称简明扼要

SQLEngine

BaseCookie

模块和包名称

模块和包要小写,简短sqlite,sha1,如果是协议加lib后缀,urllib。

以上就是详解python的命名规则的详细内容,更多请关注三水点靠木其它相关文章

Python 相关文章推荐
Python urlopen 使用小示例
Sep 06 Python
从零学Python之入门(五)缩进和选择
May 27 Python
python实现带验证码网站的自动登陆实现代码
Jan 12 Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
Jun 30 Python
Python生成器以及应用实例解析
Feb 08 Python
Python实现针对给定字符串寻找最长非重复子串的方法
Apr 21 Python
python使用magic模块进行文件类型识别方法
Dec 08 Python
关于Python3 类方法、静态方法新解
Aug 30 Python
python能做哪方面的工作
Jun 15 Python
python实现梯度下降算法的实例详解
Aug 17 Python
用python绘制樱花树
Oct 09 Python
Python闭包的定义和使用方法
Apr 11 Python
Python中断多重循环的思路总结
Oct 04 #Python
python将字母转化为数字实例方法
Oct 04 #Python
Python3.7 pyodbc完美配置访问access数据库
Oct 03 #Python
Django框架model模型对象验证实现方法分析
Oct 02 #Python
Python 线程池用法简单示例
Oct 02 #Python
python multiprocessing多进程变量共享与加锁的实现
Oct 02 #Python
Python shutil模块用法实例分析
Oct 02 #Python
You might like
仿Aspnetpager的一个PHP分页类代码 附源码下载
2012/10/08 PHP
PHP中遇到的时区问题解决方法
2015/07/23 PHP
PHP中类属性与类静态变量的访问方法示例
2016/07/13 PHP
javascript for循环从入门到偏门(效率优化+奇特用法)
2012/08/01 Javascript
浏览器页面区域大小的js获取方法
2013/09/21 Javascript
jQuery获取Radio,CheckBox选择的Value值(示例代码)
2013/12/12 Javascript
js 获取、清空input type=&quot;file&quot;的值示例代码
2014/02/19 Javascript
根据当前时间在jsp页面上显示上午或下午
2014/08/18 Javascript
JavaScript自定义等待wait函数实例分析
2015/03/23 Javascript
js获取数组的最后一个元素
2015/04/14 Javascript
如何屏蔽防止别的网站嵌入框架代码
2015/08/24 Javascript
js如何准确获取当前页面url网址信息
2020/09/13 Javascript
实例讲解Jquery中隐藏hide、显示show、切换toggle的用法
2016/05/13 Javascript
动态更新highcharts数据的实现方法
2016/05/28 Javascript
JS中script标签defer和async属性的区别详解
2016/08/12 Javascript
Angular.js自定义指令学习笔记实例
2017/02/24 Javascript
JavaScript实现shuffle数组洗牌操作示例
2019/01/03 Javascript
JS实现的类似微信聊天效果示例
2019/01/29 Javascript
js实现点赞效果
2020/03/16 Javascript
详解ES6 中的Object.assign()的用法实例代码
2021/01/11 Javascript
浅谈Python中的可变对象和不可变对象
2017/07/07 Python
pandas中去除指定字符的实例
2018/05/18 Python
django将图片上传数据库后在前端显式的方法
2018/05/25 Python
Python 调用 zabbix api的方法示例
2019/01/06 Python
python取余运算符知识点详解
2019/06/27 Python
关于Numpy中的行向量和列向量详解
2019/11/30 Python
Python collections.deque双边队列原理详解
2020/10/05 Python
英国汽车和货车租赁网站:Hertz英国
2016/09/02 全球购物
Dyson加拿大官方网站:购买戴森吸尘器,风扇,冷热器及配件
2016/10/26 全球购物
美国韩国化妆品和护肤品购物网站:Beautytap
2018/07/29 全球购物
会计职业生涯规划范文
2014/01/04 职场文书
感恩小明星事迹材料
2014/05/23 职场文书
司法所长先进事迹
2014/06/02 职场文书
2014年电工工作总结
2014/11/20 职场文书
python实现会员信息管理系统(List)
2022/03/18 Python
什么是Python装饰器?如何定义和使用?
2022/04/11 Python