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调用shell的方法
Nov 20 Python
Python的GUI框架PySide的安装配置教程
Feb 16 Python
Python简单遍历字典及删除元素的方法
Sep 18 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
Jul 24 Python
python批量导入数据进Elasticsearch的实例
May 30 Python
python实现遍历文件夹修改文件后缀
Aug 28 Python
pygame游戏之旅 添加游戏界面按键图形
Nov 20 Python
selenium+python自动化测试之鼠标和键盘事件
Jan 23 Python
python判断所输入的任意一个正整数是否为素数的两种方法
Jun 27 Python
python实现控制COM口的示例
Jul 03 Python
Python图像处理库PIL的ImageDraw模块介绍详解
Feb 26 Python
详解python3类型注释annotations实用案例
Jan 20 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
PHP在字符断点处截断文字的实现代码
2011/04/21 PHP
PHP读取PPT文件的方法
2015/12/10 PHP
如何写php守护进程(Daemon)
2015/12/30 PHP
PHP实现批量删除(封装)
2017/04/28 PHP
php装饰者模式简单应用案例分析
2019/10/23 PHP
php操作redis命令及代码实例大全
2020/11/19 PHP
jQuery的实现原理的模拟代码 -5 Ajax
2010/08/07 Javascript
jQuery - css() 方法示例详解
2014/01/16 Javascript
深入解析JavaScript中的arguments对象
2016/06/12 Javascript
微信小程序 Button 组件详解及简单实例
2017/01/10 Javascript
微信小程序 MD5加密登录密码详解及实例代码
2017/01/12 Javascript
JavaScript订单操作小程序完整版
2017/06/23 Javascript
javascript性能优化之分时函数的介绍
2018/03/28 Javascript
使用ESLint禁止项目导入特定模块的方法步骤
2019/03/04 Javascript
vue响应式更新机制及不使用框架实现简单的数据双向绑定问题
2019/06/27 Javascript
解决LayUI数据表格复选框不居中显示的问题
2019/09/25 Javascript
vue 中几种传值方法(3种)
2019/11/12 Javascript
three.js利用卷积法如何实现物体描边效果
2019/11/27 Javascript
JS实现音量控制拖动
2020/01/15 Javascript
JavaScript canvas实现雪花随机动态飘落
2020/02/08 Javascript
浅谈使用nodejs搭建web服务器的过程
2020/07/20 NodeJs
微信小程序实现可拖动悬浮图标(包括按钮角标的实现)
2020/12/29 Javascript
Python使用requests及BeautifulSoup构建爬虫实例代码
2018/01/24 Python
python实现Dijkstra算法的最短路径问题
2019/06/21 Python
在Matplotlib图中插入LaTex公式实例
2020/04/17 Python
keras实现VGG16方式(预测一张图片)
2020/07/07 Python
纯css3实现走马灯效果
2014/12/26 HTML / CSS
环境科学毕业生自荐信
2013/11/21 职场文书
预备党员入党自我评价范文
2014/03/10 职场文书
党员活动日总结
2014/05/05 职场文书
学雷锋树新风演讲稿
2014/05/10 职场文书
小区文明倡议书
2014/05/16 职场文书
2014年财务工作自我评价
2014/09/23 职场文书
个人总结与自我评价
2015/02/14 职场文书
2015公务员年度考核评语
2015/03/25 职场文书
古诗之感恩老师
2019/10/24 职场文书