热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Python变量、方法、类的命名规则

1.变量命名总结:-1.单下划线开头变量:protected-2.双下划线开头变量:private-3.双下划线开头,双下划

 

 


1. 变量命名总结:
- 1.单下划线开头变量:protected
- 2.双下划线开头变量:private
- 3.双下划线开头,双下划线结尾:系统内置变量
2. 函数命名总结:
- 1.私有方法:小写和一个前导下划线
- 2.特殊方法(魔术方法):小写和两个前导下划线,两个后置下划线
- 3.函数参数:小写和下划线,缺省值等号两边无空格
3. 类名称命名:
- 类总是使用驼峰格式命名,即所有单词首字母大写其余字母小写。

#!/usr/bin/env python
#
-*- coding: utf-8 -*-"""
__Title__ = '下划线变量与命名'
__Author__ = 'Zhangyf'
__Author_email__ ='hpuyanfeng@126.com'
__Time__ = '2018/1/22'
"""# 变量命名总结:
#
1.单下划线开头变量:protected
#
2.双下划线开头变量:private
#
3.双下划线开头,双下划线结尾:系统内置变量"""
单下划线开头变量
_xxx,单下划线开头的变量,标明是一个受保护(protected)的变量,原则上不允许直接访问,但外部类还是可以访问到这个变量。
这只是程序员之间的一个约定,用于警告说明这是一个私有变量,外部类不要去访问它。
print(stu._name) 当要输入_name时,pycharm不会进行_name的提示
print(stu.age) 当要显示age时,pycharm会进行age的提示
"""class Student:
def __init__(self, name, sex):
self._name
= name
self.sex
= sexstu = Student('zyf', 'Male')
print(stu._name) # 单下划线protected的变量,原则上不允许直接访问 输出:zyf
print(stu.sex) # age可以直接访问 输出:Male"""
双下划线开头
__xxx,双下划线开头的,表示的是私有类型(private)的变量。
只能是允许这个类本身进行访问了, 连子类也不可以.
用于命名一个类属性(类变量),调用时名字被改变
(在类Student内部,__name变成_Student__name,如 self._Student__name)
双下划线开头的实例变量是不是一定不能从外部访问呢?其实也不是。仍然可以通过_Student__name来访问__name变量:
"""class Person:
def __init__(self, name):
self.
__name = nameper = Person('zyf2')
print(per._Person__name) # 输出zyf2 但是无法直接访问__name"""
双下划线开头,并且以双下划线结尾
__xxx__,以双下划线开头,并且以双下划线结尾的,是内置变量.
内置变量是可以直接访问的,不是 private 变量,如__init__,__import__或是__file__。
★不要自己定义这类变量
xxx_,单下划线结尾的变量一般只是为了避免与 Python 关键字的命名冲突
USER_CONSTANT,大写加下划线,对于不会发生改变的全局变量,使用大写加下划线
"""# 函数命名总结:
#
1.私有方法:小写和一个前导下划线
#
2.特殊方法(魔术方法):小写和两个前导下划线,两个后置下划线
#
3.函数参数:小写和下划线,缺省值等号两边无空格"""
函数
总体而言应该使用,小写和下划线私有方法 : 小写和一个前导下划线
这里和私有变量一样,并不是真正的私有访问权限。
同时也应该注意一般函数不要使用两个前导下划线(当遇到两个前导下划线时,Python 的名称改编特性将发挥作用)。特殊函数后面会提及。#特殊方法 : 小写和两个前导下划线,两个后置下划线
#这种风格只应用于特殊函数,比如操作符重载等。#函数参数 : 小写和下划线,缺省值等号两边无空格
"""# 私有方法
class PrivateCase:
@staticmethod
def _secrete():
print(r"Don't test me")priC = PrivateCase()
priC._secrete()
# _secrete为protected member# 特殊方法(魔术方法)
def __add__(self, other):
return int.__add__(other)# 函数参数
def connect(self, user=None):
self._user
= user"""
★类名称命名:
类总是使用驼峰格式命名,即所有单词首字母大写其余字母小写。
类名应该简明,精确,并足以从中理解类所完成的工作。
常见的一个方法是使用表示其类型或者特性的后缀,例如:SQLEngine ,MimeTypes
对于基类而言,可以使用一个 Base 或者 Abstract 前缀
不要滥用 *args 和 **kwargs,可能会破坏函数的健壮性
"""

 

---------------------

来源:https://blog.csdn.net/feikon2/article/details/79126774

转:https://www.cnblogs.com/liuyanhang/p/11099897.html



推荐阅读
  • 关于python调试大法的信息
    本文目录一览:1、pdbpython调试怎么用 ... [详细]
  • 本文介绍了一个Java猜拳小游戏的代码,通过使用Scanner类获取用户输入的拳的数字,并随机生成计算机的拳,然后判断胜负。该游戏可以选择剪刀、石头、布三种拳,通过比较两者的拳来决定胜负。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • IOS开发之短信发送与拨打电话的方法详解
    本文详细介绍了在IOS开发中实现短信发送和拨打电话的两种方式,一种是使用系统底层发送,虽然无法自定义短信内容和返回原应用,但是简单方便;另一种是使用第三方框架发送,需要导入MessageUI头文件,并遵守MFMessageComposeViewControllerDelegate协议,可以实现自定义短信内容和返回原应用的功能。 ... [详细]
  • Postgresql备份和恢复的方法及命令行操作步骤
    本文介绍了使用Postgresql进行备份和恢复的方法及命令行操作步骤。通过使用pg_dump命令进行备份,pg_restore命令进行恢复,并设置-h localhost选项,可以完成数据的备份和恢复操作。此外,本文还提供了参考链接以获取更多详细信息。 ... [详细]
  • 十大经典排序算法动图演示+Python实现
    本文介绍了十大经典排序算法的原理、演示和Python实现。排序算法分为内部排序和外部排序,常见的内部排序算法有插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。文章还解释了时间复杂度和稳定性的概念,并提供了相关的名词解释。 ... [详细]
  • Pylance有哪些特性
    这篇文章给大家分享的是有关Pylance有哪些特性的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Pylance安装和其他VSC ... [详细]
  • 有时候导入本地模块或者py文件时,下方会出现红色的波浪线,但不影响程序的正常运行,但是在查看源函数文件时,会出现问题问题如下 ... [详细]
  • Python语言简介、环境搭建、PyCharm的安装和配置
    一、Python语言简介1.1Python语言的基本概念官方对Python语言的介绍如下:Python是一款易于学习且功能强大的编程语言。它具有高效率的数据结构,能够简单又有效地实 ... [详细]
  • 【爬虫训练场】:分页爬虫案例设计Demo,Python Flask与MySQL的完美连接
    网站类应用,一定离不开MySQL,所以本案例将带着大家学习一下,通过Flask调用MySQL数据,并实现分页呈现。类被称作蓝图,它是一个存储操作方法的容器,Flask可以通过Blu ... [详细]
  • pycharm安装插件的方法
    小编给大家分享一下pycharm安装插件的方法,相信大部分人都还不怎么了解,因此分享这边文章给大家学习,希望大家阅读完这篇文章后大所收获,下面 ... [详细]
  • 1.《Python程序设计基础与应用》第1章 Python概述
    第1章Python概述1.1Python语言简介(1)Python是一门跨平台、开源、免费的解释型高级动态编程语言。(2࿰ ... [详细]
  • 大数据 (三) BI报表系统  superset 源码搭建开发环境
    大数据 (三) BI报表系统 superset 源码搭建开发环境 ... [详细]
author-avatar
妹纸叫BLACK
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有