程序里有很多东西需要命名,

​ 良好的命名习惯可以提高编程效率; 减少出错;

​ 良好命名的程序清晰易读。

​ 好的名称可以提供很多有价值的信息。

本文解释作者在《Python编程基础及应用》一书中所使用的命名规则。

本文节选自作者的《Python编程基础及应用》视频教程。

命名示例

变量、类的数据成员
iSum sName fPrice
函数名称
add() convert() del() empty() push_back() pop()
getPrice() setPrice() draw() render() repaint()
类型名称
Student GraphDrawer Campus Engine
FloatBuffer Lesson Monitor Printer EMailPacket

版权声明

本文可以在互联网上自由转载,但必须:注明出处(作者:海洋饼干叔叔)并包含指向本页面的链接。

本文不可以以纸质出版为目的进行改编、摘抄。

正确, 错误 vs 好,相对不好, 坏

只要符合所用语言的命名规则的命名原则上都是“正确”的。

不同的人有不同的命名习惯。

没有标准答案,只有主观的好或者相对不好的判断。

但真的很重要:

​ 良好的命名习惯可以提高编程效率; 减少出错;

​ 良好命名的程序清晰易读。

​ 好的名称可以提供很多有价值的信息。

规则1 全程使用英文,不准用拼音

▪KHBH XH ZHYE DQJG - 猜得出这些名称是什么意思吗?
sCustomerNo, sStudentNo fAccountBalance fCurrentPrice
Too long for you ?
sCusNo, sStuNo, fAccBalance , fCurPrice

规则2 变量/类的数据成员的命名

类型名缩写(小写) + 英文单词或其缩写(首字母大写)

类型 解释 缩写 举例
float 浮点数 f fPrice fSum fAmount fScore fHeight fWeight
int 整数 i iCount / iCnt iStudentCount iWidth iHeight iCapacity
string 字符串 s sStudentNo sMemo sHint sDiagnostics sContent sName
bool 布尔型 b bFound bCaptured bFull bHungry bDied bMarried bAvailable

如果变量表达的是一个集合(数组或者list), 用小写的英文单词的复数形式:

​ students members prices wheels teachers universities shoes arms

规则3 函数的命名

一个英文单词: 小写

add() convert() del() empty() try() pop() push()

两个英文单词: 第二个单词首字母大写 动+名

addAmount() setPrice() getPrice()

setEmpty() pushDown() riseUp()

toString() toDouble()

规则4 类型的命名

由一个或者两个英文单词构成,每个单词的首字母均大写

FloatBuffer PrinterQueue Student Lesson

Movie Song Employee

Team Board Company

Supplier GoldFish CellPhone

GraphDrawer

在面向对象程序设计当中,一个文件通常只包括一个类型,通常文件名由类型名 + . + 扩展名构成:

Student.py Company.h Company.cpp PrinterQueue.java

规则5 例外

如果有一个临时变量,仅在上下几行局部代码中被使用,用完即弃,可以用小写单字母:(代码阅读者容易通过上下文确定变量的类型和用途)

s  = s  + “, Done”
print(s)for i in range(100):print(i)

当心中文目录及中文文件名

很多开发环境及软件对中文的支持并不好,永远不要使用任何包含中文的目录或文件名:

示例 正/误
d:/学习资料/python/实验1 X
d:/Learing/python/Test1

忠告

命名这件事不同的人有不同的看法。

认真命好每个名, 尽量遵守规则。

表面上花时间,实际上省时间。

程序如果需要交给教师检查或者请求教师协助,两件事情先做好:

  • 确认命名符合要求;

  • 把程序排列整齐,检查缩进,分行。

本文节选自作者的《Python编程基础及应用》视频教程。想完整零基础学习Python程序设计,欢迎使用此免费视频教程。

说说程序中的命名规则 - 以Python为例相关推荐

  1. python 语言变量命名规则的是_Python中变量命名规则有哪些

    Python中变量命名规则有哪些 发布时间:2020-09-24 13:05:21 来源:亿速云 阅读:72 今天就跟大家聊聊有关Python中变量命名规则有哪些,可能很多人都不太了解,为了让大家更加 ...

  2. 命名空间不能直接包含_C++程序中可以命名的5种元素

    C++程序中的许多元素都有用来表示它们的名称(也称为标识符).在C++程序中,可以命名的5种元素是: (1) 函数.函数是自包含的.可执行代码的命名块.第8章将详细讨论如何定义函数. (2) 变量.变 ...

  3. SAS中变量命名规则

    一般SAS中变量命名规则:下划线跟英文字母开头,英文字母.数字.下划线组成,且总长度不超过32个英文字符长度. 那么可以使用中文作为变量名么?答案是肯定的. SAS中有个专门的系统选项用来设置(大小写 ...

  4. Gnuradio中的命名规则和数据类型

    一.GNU Radio中的命名规则 1.标识符中的所有单词都用下划线分隔,例如gr_vector_int 2. GNU Radio包中的所有类型都以gr为前缀,例如gr_float 3.所有类变量都以 ...

  5. c语言规定标识符 字符串,c语言中标识符命名规则是怎样的

    一).变量类型和表示方法 1.什么是变量? 一句话,变量是存储数据的值的空间.由于数值的类型有多种,有整数.小数(浮点数).字符等等,那么对应的变量就有整型变量.浮点型变量.字符型变量.变量还有其他的 ...

  6. 网页设计过程中一般命名规则

    2019独角兽企业重金招聘Python工程师标准>>> 由--学无止境--整理 www.nmgzlt.com/blog id的命名: (1)页面结构 容器: container    ...

  7. .NET中的命名规则

    名称空间的命名  命名名称空间的一般规则如下:  CompanyName.TechnologyName 这样,我们看到的名称空间应该是这样的:   Microsoft.Office  PowerSof ...

  8. C语言用不同字体标识,c语言中标识符命名规则是怎样的

    一).变量类型和表示方法 1.什么是变量? 一句话,变量是存储数据的值的空间.由于数值的类型有多种,有整数.小数(浮点数).字符等等,那么对应的变量就有整型变量.浮点型变量.字符型变量.变量还有其他的 ...

  9. python猜数游戏在程序中预设一个_一道Python简单程序结构练习题

    1.猜数游戏. 在程序中预设一个0~9之间的整数,让用户通过键盘输入所猜数字,如果大于预设的数, 显示"遗憾,太大了":如果小于预设的数,显示"遗憾,太小了": ...

最新文章

  1. ubuntu 默认鼠标双击问题
  2. java有模糊查询吗,到底Java里的模糊查询语句该怎么写
  3. 外省籍进城务工人员随迁子女在浙江就地升学政策出台
  4. python语言怎么用-Python语言应用解析,如何入门学Python?
  5. LeetCode 795. 区间子数组个数
  6. 视频API的发展方向
  7. iframe 在 SAP 三款产品中的三个应用场景
  8. ASCII码与字符串的相互转换
  9. 最短路径算法----floyd(转)
  10. xpath helper小工具的安装
  11. 【完结】深度学习CV算法工程师从入门到初级面试有多远,大概是25篇文章的距离...
  12. mysql dsec_MySql数据库操作命令
  13. 7.11 其他面向对象设计原则2:能用组合的地方,不要用继承
  14. 20200317_决策树预测贷款申请
  15. php中$t=date()函数参数意义及时间更改
  16. matlab 灰度化原理公式,MATLAB的Sobel图像边缘灰度值检测算法的详细公式和实现资料概述...
  17. Ubuntu的版本号命名规则
  18. javascript 闭包理解总结
  19. 协议和代理模式的概念
  20. Embase,PubMed,Cochrane,WebOfScience,ScienceDirect检索方法

热门文章

  1. Jupyter Notebook 提示 “IOPub data rate exceeded“
  2. 20190722海外小米和国内华为的关联唤醒调研
  3. 中国天气网接口类(中国天气预报)
  4. 如何做竞品分析——以植物养护类APP为例
  5. Kaldi-dnn 学习01
  6. 51单片机精华笔记(下)
  7. MIO神达A700/A701ROM刷机教程
  8. JAVASCRIPT 取得当前时间,包括农历时间 时间格式:2011年11月8日 16:54 星期二 农历辛卯年(兔) 十月十三 申时...
  9. 足の痛いが続いて。。。
  10. UWB硬件设计相关内容