Python中的命名规范

2023-05-16

变量命名准则

  1. 您应当尽量使自己的变量命名含义清晰,不要使用混乱的字母、数字、表情等意义不明的字符来命名变量
  2. 一般来说,您不应当使自己的风格频发变换——如果可能,请将整个项目保持统一风格
  3. 此文章根据本人习惯与编码风格整理,可能和读者的个人习惯与风格有一定冲突,仅提供参考作用,非强制性标准
  4. 请尽量不要使用意义不明的字母缩写(此处提供字母缩写表)
  5. 有关下划线的特殊规定,请查看:在Python中,下划线代表着什么?
  6. Python3默认编码为UTF-8,理论上来说可以使用中文做变量名称,但我们通常不建议这么做
  7. 普通的Python变量可以由下划线(“_”)、字母、数字组成,但是不能由数字开头

知名命名法

  1. 小驼峰命名法——第一个单词的字母大写,其他单词字母均为小写,如:myFunctionName、myMethodName、myClassName
  2. 大驼峰命名法(帕斯卡命名法):所有单词字母大写,如:MyFunctionName、MyMethodName、MyClassName
  3. 下划线命名法:所有单词小写,用下划线链接,如:my_function_name、my_method_name、my_class_name
  4. 匈牙利命名法:以“属性+类型+对象描述”命名,但在Python中这种命名方法并不常见

常量

# 因Python中没有明确的“常量”概念,所以有此约定
# 全局变量一般为常量,且每个字母应当大写,中间用下划线连接
# 如:
NAME = 'value'
COUNT_NUMBER = 1

普通变量

# 普通变量应当以下划线命名法命名
# 如:
my_demo_name = 'value'

局部变量

# 局部变量原则上应当和普通变量的命名方式保持一致
# 但被大多数人所认可的,i、j、k亦可作为临时变量
# 而正如【变量命名准则 第五条】链接所述,亦可以用“_”命名那些并不重要的、用不到的变量
# 如:
my_demo_name = 'value'

for _ in range(10):
    print('value')

for i in range(10):
    for j in range(10):
        for k in range(10):
            print(i,j,k)

nums = [1,2,3]

for num in nums:
    print(num)

类与方法

# 类的名称应当以大驼峰命名法命名
# 函数或方法的名称应当以小驼峰命名法或下划线命名法命名(并应用适当的下划线规则),本人推荐使用小驼峰命名法
# 如:
class MyClassName:
    def __init__(self, name):
        self.name = name
    def getName(self):
        return self.name

print(MyClassName('value').getName())

self与cls

# 在实例方法中,应当在第一个参数的位置带上self,self表示此实例对象
# 在类方法中,应当在第一个参数的位置带上cls,cls表示此类
# 如:
class A:
    def __init__(self, name):
        s.name = name

    def print_(self):
        print(self.name)

obj = A('hi')
obj.print_()

# 但self与cls的具体名称并不是一定的,之所以使用self和cls是因为它是约定俗成的,如果愿意,也可以替换成其他字符(但通常不建议这么做)
# 如下也能正常运行:

class B:
    name = 'value'
    
    @classmethod
    def print_(c):
        print(c.name)

B.print_()

单词缩写

全称 含义 简称
automatic 自动的 auto
information 信息 info
addition 添加 add
message 消息 msg
function 函数 func
error 错误 err
object 对象 obj
count 计数 cnt
variable 变量 var
... ... ...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python中的命名规范 的相关文章

随机推荐

  • winxp 远程rdp 连接 Ubuntu10.10-再次远程登陆失败 (二)

    在文章winxp 远程rdp 连接 Ubuntu10 10 一 操作完成 xff0c 并且进行第一成功登陆之后 xff0c 退出 xff08 注销 直接关闭mstsc退出按钮 xff09 远程连接之后 xff0c 重新登录出现 xff0c
  • PostGIS教程七:几何图形(Geometry)

    目录 一 介绍 二 元数据表 三 表示真实世界的对象 3 1 点 xff08 Points xff09 3 2 线串 xff08 Linestring xff09 3 3 多边形 xff08 Polygon xff09 3 4 集合 xff
  • FreeBSD下修改安装源的方法

    FreeBSD默认是从官方的源下载软件包的 xff0c 速度比较慢 xff0c 可以修改配置文件指定国内的镜像源来快速安装软件 说明 xff1a FreeBSD中安装软件一般有两种方式 xff1a xff08 一 xff09 使用pk ad
  • sqlite3_bind

    sqlite3 bind text 中绑定的指针 xff0c 在sqlite3 step 时必须存在 xff0c 不能释放 xff0c 否则会是乱码 sqlite3 bind blob中绑定的指针 xff0c 在sqlite3 step 时
  • Windows10 Clion 无法打开文件cudart.lib

    真是巨坑 xff0c 遇到这个问题 xff0c 且耗费两个小时百度 google xff0c 差点放弃换用Visual Studio xff0c 但真实原因竟然这么简单 在你的CmakeList txt中 xff0c 是不是这样添加cuda
  • cf规则介绍

    codeforces的正确打开方式 1 背景 可能很多人都久闻codeforces网站的大名 xff0c 却苦于各种各样的区域性问题或玄学问题 xff0c 没能真正地体验到cf所带来的极致魅力 而网络上关于这方面的博文太少了 xff08 至
  • 使用Buildroot + QEMU构建和运行Linux

    使用Buildroot 43 QEMU构建和运行Linux xunknown 64 2022 04 06 概述 Buildroot是一个用于为嵌入式系统构建完整的Linux系统 xff08 包括Bootloader xff0c Linux
  • openwrt 无线中继设置–固定IP+打印服务器和文件共享

    openwrt 无线中继设置 固定IP 43 打印服务器和文件共享 因为给TPLINK703N xff0c 编译16MROM成功 xff0c 固件里加入了打印服务器和SAMBA VSFTPD USB挂载等功能 xff0c 可使用有线连接上级
  • Linux 终端(TTY)

    原文 xff1a Linux 终端 TTY sparkdev 博客园 Linux 终端 TTY TTY 是 Teletype 或 Teletypewriter 的缩写 xff0c 原来是指电传打字机 xff0c 后来这种设备逐渐键盘和显示器
  • shell命令和变量//区分变量未定义和变量已定义但值为空

    转载 xff1a Shell Command Language 参考 xff1a shell How to check if a variable is set in Bash Stack Overflow 关键 xff1a 形如 para
  • 区分本地终端和ssh远程终端

    如果本地和远端服务器用户名和主机名 xff0c 终端颜色配置都一致 xff0c 通过ssh登陆服务器的时候 xff0c 在本地终端和ssh终端来回切换时 xff0c 傻傻分不清当前终端是本地终端还是ssh远程服务器 下面这个连接介绍了一种方
  • 电路仿真软件Circuit JS1修改菜单字体大小

    在线演示 xff1a https www falstad com circuit circuitjs html 下载地址 xff1a https www falstad com circuit offline circuitjs1 linu
  • Ubuntu 22.04配置samba服务器

    安装samba sudo apt install samba 可以验证一下安装结果 xff1a smbd version 创建samba用户密码 创建samba用户 xff08 可选 xff09 xff1a sudo adduser sys
  • 一个查找文件的类:它的长处在于能够搜索子目录并且是可控制的

    find file cpp Defines the entry point for the console application include 34 stdafx h 34 测试需要的头文件 include lt conio h gt
  • Clearwater IMS All-in-one环境搭建指导书

    xunknown 64 163 com 2015 01 13 一 前言 Clearwater IMS 是一个开源的 IMS 项目 提供 VoIP SIP 电话等功能 Clearwater IMS 主页 http www projectcle
  • Clearwater IMS All-in-one环境搭建指导书

    xunknown 64 163 com 2015 01 13 一 前言 Clearwater IMS 是一个开源的 IMS 项目 提供 VoIP SIP 电话等功能 Clearwater IMS 主页 http www projectcle
  • Sublime Text3注册码(亲测可用 2019-11-19)

    转自博客中的朋友的 xff0c 用于保存 适用于Sublime Text2同时也适用于Sublime Text3 1 打开本地hosts文件 Windows路径是C Windows System32 drivers etc MacOS路径是
  • H3C配置多区域OSPF实验

    一 先上拓扑 xff1a 二 实验环境 xff1a Windows 10 xff08 21H1 xff09 xff0c HCL版本 xff1a V3 0 1 xff08 华三模拟器 xff09 三 实验需求 xff1a SWA SWB SW
  • 配置mysql使用ssl连接,配置java连接mysql使用ssl

    查看mysql是否支持ssl连接 show variables like 39 ssl 39 生成服务器端 openssl genrsa 2048 gt ca key pem openssl req sha1 new x509 nodes
  • Python中的命名规范

    变量命名准则 您应当尽量使自己的变量命名含义清晰 xff0c 不要使用混乱的字母 数字 表情等意义不明的字符来命名变量一般来说 xff0c 您不应当使自己的风格频发变换 如果可能 xff0c 请将整个项目保持统一风格此文章根据本人习惯与编码