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

Python变量、方法、类的命名规则1 变量命名总结 1 单下划线开头变量 protected 2 双下划线开头变量 private 3 双下划线开头 双下划线结尾 系统内置变量 2 函数命名总结 1 私有方法 小写和一个前导下划线 2 特殊方法 魔术方法 小写和两个前导下划线 两个后置下划线 3 函数参数 小写和下划线 缺省值等号两边无空格 3 类名称命名 类总是使用驼

[外链图片转存中…(img-pGuQ2mwX-32)]

  1. 变量命名总结:
  • 1.单下划线开头变量:protected
  • 2.双下划线开头变量:private
  • 3.双下划线开头,双下划线结尾:系统内置变量
  1. 函数命名总结:
  • 1.私有方法:小写和一个前导下划线
  • 2.特殊方法(魔术方法):小写和两个前导下划线,两个后置下划线
  • 3.函数参数:小写和下划线,缺省值等号两边无空格
  1. 类名称命名:
  • 类总是使用驼峰格式命名,即所有单词首字母大写其余字母小写。
#!/usr/bin/env python # -*- coding: utf-8 -*- """ __Title__ = '下划线变量与命名' __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 = sex stu = 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 = name per = 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://javaforall.net/230692.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 数组 python_python没有数组

    数组 python_python没有数组python数组PythonArraycontainsasequenceofdata.Inpythonprogramming,thereisnoexclusivearrayobjectbecausewecanperformallthearrayoperationsusinglist.Todaywewilllearnaboutpython…

    2022年8月13日
    7
  • 坐标拾取系统定位_cad移动到绝对坐标

    坐标拾取系统定位_cad移动到绝对坐标usingUnityEngine;usingUnityEngine.UI;usingSystem.Collections;publicclasstransforms:MonoBeh

    2022年8月5日
    9
  • SilverLight网站收藏

    SilverLight网站收藏tp://msdn2.microsoft.com/en-us/asp.net/bb187452.aspxSilverlight1.0Beta下载http://msdn2.microsoft.com/en-us/asp.net/bb419316.aspxSilverlight1.1Alpha下载http://msdn2.microsoft.com/en-us/asp.net/bb4

    2022年10月19日
    4
  • 深度学习之RNN循环神经网络(理论+图解+Python代码部分)[通俗易懂]

    深度学习之RNN循环神经网络(理论+图解+Python代码部分)[通俗易懂]目录前言一、普通神经网络二、循环神经网络1.前向传播2.反向传播算法BPTT3.自然语言处理之RNN 4.梯度问题4.1梯度爆炸4.2梯度消失:5.Keras建立RNN模型进行IMDb情感分析的Python代码前言前段时间实验室人手一本《DeepLearning》,本文章结合这本圣经和博客上各类知识以及我自己的理解和实践,针对RNN循环神经网络作出…

    2022年10月21日
    6
  • ddr2 odt_ddr2电压

    ddr2 odt_ddr2电压经常有人会说支持DDR2的主板存在偷工减料的现象。事实上这是由于DDR2内存中使用了一项新的ODT技术,它可以在提高内存信号稳定性的基础上节省不少电器元件。主板终结是一种最为常见的终结主板内干扰信号的方法。在每一条信号传输路径的末端,都会安置一个终结电阻,它具备一定的阻值可以吸收反射回来的电子。但是目前DDR2内存的工作频率太高了,这种主板终结的方法并不能有效的阻止干扰信号。若硬要采用主板终结

    2025年10月10日
    6
  • python【图片转字符画】,图片灰度值处理

    python【图片转字符画】,图片灰度值处理

    2021年3月12日
    160

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号