初学编程,不了解编写规范,代码不能运行,幸好有入门宝典
本章节我们来讲述一下Python的编码规范,通过详细对代码编写规则以及命名规范等进行介绍。
1.编写规则
Python采用PEP 8 的编码规范,接下来会讲解一些我们在学习Python过程应该严格遵守的条目。
● 每个import语句只导入一个模块,尽量避免一次导入多个模块。
例如:
import random
import os
#尽量不要采取下面这种方式,分别导入
import os,random
● 不要在代码末尾加‘;’,也不要用分号将2条命令写在同一行。
例如:#不规范写法
a=1;
b=1;
c=1;d=1;
#规范写法
a = 1
b = 1
c = 1
d = 1
或者
a = b = c = d = 1
● 建议每行不超过80个字符,如果超过,建议用小括号“()”将多行内容连接起来,而不推荐使用反斜杠‘\’进行连接。
● 使用必要的空行可以增加代码的可读性,一般在顶级定义之间空两行,而方法定义之间空一行。
● 运算符两侧和函数参数之间建议使用空格进行分割。
● 应该避免在循环中使用+和+=操作符累加字符串,这是因为字符串是不可变的,这样会创建不必要的临时对象,推荐做法是将每个字符串加入列表,然后循环结束后使用join()方法连接列表。
● 适当使用异常处理结构提高程序容错性,但不能过多依赖异常处理结构。
2.命名规范
命名规范在代码中起到很重要的作用,尽管不规范命名的程序我们依然可以运行,但是会影响我们更方便理解代码。最后,如果你的时间不是很紧张,并且又想快速的python提高,最重要的是不怕吃苦,建议你可以架微♥信:762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~
下面来介绍一些命名规范:
● 命名尽量短小并且使用小写字母,可以使用下划线分割多个字母,例如get_name、tom_home、asset,这些都是推荐使用的类型。(本小节存在不遵守此规范的实例,有兴趣的可以找一下)
● 类名采用单词首字母大写的形式,例如,GetMoney,History等
● 使用单下划线“_”开头的模块变量或者函数是受保护的,在使用import*from语句从模块中导入时这些变量或者函数不能被导入。
● 使用双下划线 “__”开头的变量或方法是私有的。
3. 空格
按照标准的排版规范来使用标点两边的空格
括号内不要有空格.
下面是使用空格的规范:
● 赋值符号“=”前后各有一个空格
● 所有的二元运算符都应该使用空格与操作数分开
例如:a += c + d
● 括号内不要有空格,Python中括号包括小括号“0”、中括号“[]”和
● 括号“{}"。
● 不要在逗号、分号、冒号前面有空格。但应该在它们后面加(除了在行尾)。
Yes: if x == 4:
print x, y
x, y = y, x
No: if x == 4 :
print x , y
x , y = y , x
4.缩进
4个空格被认为是一个缩进,Python中的缩进类似于C语言中的‘{}’,在‘:’换行后一定要跟一个缩进,不然会出现语法错误。如果不正确使用缩进,就会出现SyntaxError错误。
Yes: # 与起始变量对齐
foo = long_function_name(var_one, var_two,
var_three, var_four)
字典中与起始值对齐
foo = {
long_dictionary_key: value1 +
value2,
…
}
4 个空格缩进,第一行不需要
foo = long_function_name(
var_one, var_two, var_three,
var_four)
字典中 4 个空格缩进
foo = {
long_dictionary_key:
long_dictionary_value,
…
}
No: # 第一行有空格是禁止的
foo = long_function_name(var_one, var_two,
var_three, var_four)
2 个空格是禁止的
foo = long_function_name(
var_one, var_two, var_three,
var_four)
字典中没有处理缩进
foo = {
long_dictionary_key:
long_dictionary_value,
…
}
5.分号
不要在行尾加分号, 也不要用分号将两条命令放在同一行。最后,如果你的时间不是很紧张,并且又想快速的python提高,最重要的是不怕吃苦,建议你可以架微♥信:762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~
6.行长度
每行不超过80个字符
以下情况除外:
长的导入模块语句
注释里的URL
不要使用反斜杠连接行。
Python会将 圆括号, 中括号和花括号中的行隐式的连接起来 , 你可以利用这个特点. 如果需要, 你可以在表达式外围增加一对额外的圆括号。
推荐: foo_bar(self, width, height, color=‘black’, design=None, x=‘foo’,
emphasis=None, highlight=0)
if (width == 0 and height == 0 and
color == ‘red’ and emphasis == ‘strong’):
如果一个文本字符串在一行放不下, 可以使用圆括号来实现隐式行连接:
x = ('这是一个非常长非常长非常长非常长 ’
‘非常长非常长非常长非常长非常长非常长的字符串’)
在注释中,如果必要,将长的URL放在一行上。
7.括号
除非是用于实现行连接, 否则不要在返回语句或条件语句中使用括号. 不过在元组两边使用括号是可以的.
Yes: if foo:
bar()
while x:
x = bar()
if x and y:
bar()
if not x:
bar()
return foo
for (x, y) in dict.items(): …
No: if (x):
bar()
if not(x):
bar()
return (foo)
8.注释
最后再讲一下注释规则,大家会在本教程中看到很多很多的注释,注释穿插于代码中,‘#’为开始,换行即截止。
9.总结
本章就讲到这里,良好的编程习惯会帮助你成为一个优秀的开发人员,本章的内容大家可以在之后的学习过程中多多回顾,下一节我们来学习一下标识符和关键字。
初学编程,不了解编写规范,代码不能运行,幸好有入门宝典相关推荐
- 嵌入式linux开发-(一)如何编写linuxC代码并运行(ubantu20.04)
⏩ 大家好哇!我是小光,嵌入式爱好者,一个想要成为系统架构师的大二学生. ⏩最近开始学习嵌入式linux驱动开发编程,本文对如何编写linuxC代码进行一个总结,也做一个记录. ⏩感谢你的阅读,不对的 ...
- python打完代码怎么运行-Python的代码是如何去进行运行的?
近年来,Python语言迅速崛起,其简洁.免费.易学习.兼容性好等特点以及其面向对象.函数式编程.过程编程.面向方面编程,受到众人的喜爱.与其他编程程序的语言基本相同,Python也是需要在相应的程序 ...
- 基于java 工单管理_实训任务工单1-2(编写规范Java代码) 实训任务工单1-2(编写规范Java代码).docx_学小易找答案...
[其它]实训任务工单4-1(泛型类.泛型方法的应用) 实训任务工单4-1(泛型类.泛型方法的应用).docx [简答题]教学工单5-1Java序列化机制的使用 [填空题]The name of my ...
- C语言 程序代码编写规范
前言 一个好的程序编写规范是编写高质量程序的保证.清晰.规范的源程序不仅仅是方便阅读,更重要的是能够便于检查错误,提高调试效率,从而最终保证软件的质量和可维护性. 说明 l 本文档主要适用于刚刚开始接 ...
- c语言程序前言,C语言 程序代码编写规范前言
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 一个好的程序编写规范是编写高质量程序的保证.清晰.规范的源程序不仅仅是方便阅读,更重要的是能够便于检查错误,提高调试效率,从而最终保证软件的质量和可维护性 ...
- c语言程序报告的前言,C语言 程序代码编写规范前言
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 一个好的程序编写规范是编写高质量程序的保证.清晰.规范的源程序不仅仅是方便阅读,更重要的是能够便于检查错误,提高调试效率,从而最终保证软件的质量和可维护性 ...
- 编写通用计算机代码,计算机源代码编写规范(VB版本).doc
计算机源代码编写规范(VB版本) 计算机源代码编写规范(VB编码规范) 编 号:MPDK/ZY-17-2007 修 改 号:0 发 放 号: 发布时间:200 实施时间:200 编 制: 批 准: V ...
- 长沙北大青鸟java 学费_长沙北大青鸟学校好不好 长沙北大青鸟实力学费一览表:Java代码编写规范(二)...
原标题:长沙北大青鸟学校好不好 长沙北大青鸟实力学费一览表:Java代码编写规范(二) 文件名规范 1.一个Java源文件只能存储个Java类. 2.文件名与Java类名相同. 3.一个类文件的代码行 ...
- 项目文档编写规范与代码规范
往往越是规模大的公司,其项目工作中的每一个环节都有相应的规范进行管理,这些规范都是都前辈呕心沥血,披荆斩棘所获的的经验总结,而非普通文书工作者的推猜可得. 当然,如果刚刚创业起步的小公司如能更早的抓住 ...
最新文章
- 机器学习模型调参指南(附代码)
- python3使用serial以及pyserial包读取串口数据并解析字节数组,涉及数据移位以及Python无符号整数转为有符号整数操作
- ADO学习(九)如何阅读ADO文档
- WebApiClient的JsonPatch局部更新
- c语言用指针实现打开和关闭文件,我用rewind函数没把指针直到开始,关闭文件然后打开就行。帮忙看看...
- oracle关联字段和序列,oracle(9) 序列和约束
- sed 和 awk 正则表达式
- server.MapPath的相对路径问题
- 91 卫图与bigemap地图下载器功能对比
- Pr 与音频相关的调整方法
- 斯坦福大学公开课:iOS 7应用开发 (二)
- linux 查看裸设备与lv,LINUX 如何查看裸设备
- 电脑编程从哪里开始学习_我想学习编程,但我不知道从哪里开始
- nginx 404 图片均衡
- STM32-F407入门学习专题(九) STM32外设之ADC
- html预览pdf文件
- Qt编写可视化大屏电子看板系统16-标准柱状图
- 中国科学技术大学计算机2020,中国科学技术大学2020年第七届计算机科学暑期夏令营报名通知...
- 机械硬盘函数不正确要如何办啊
- 计算你来到世界多少天