python语法风格
这里只给出其它文章里不适合出现部分语法风格。
python有几种类型的复合语句:if、for、while、def、class、try/except、with/as等。这些复合类型的语句在编写时,要遵循python的语法风格:
- 冒号结尾复合语句的声明,如
if expr:、def f(): - 通过缩进数量决定代码块层次,同级别的代码块缩进数量相同
- 也就是通过缩进来取代其它语言中的
{}表示的代码块层次
- 也就是通过缩进来取代其它语言中的
- 代码体部分缩进,缩进数量随意,但同一层次的代码块缩进数量必须相同
- 如果代码体部分只有一个语句,可以直接放在声明行冒号的后面,如
if expr: print("a") - 可以使用空格或制表符进行缩进,但缩进同一层次时,不要混用空格或制表符
- 允许这些复合语句的声明行部分的表达式不使用括号包围,但使用括号也不会错,使用括号是为了确保表达式的优先级
- python中的括号类型(如小括号、中括号、大括号)都可以让代码换行书写,也就是续行。虽然
\也有效,但不建议。
例如:
if a > 3:
print("hello world1")
print("hello world2")
else:
print("hello world else")
上面if和else位于同一层次的全局(文件)代码块,if的主分支两个语句位于同一层次的代码块(缩进相同)。在其他语言中,对等的写法大概如下:
if (a > 3) {
print("hello world1")
print("hello world2")
} else {
print("hello world else")
}
python中,条件表达式部分加上括号也没问题:
if (a>3):
...
如果代码体只有单个语句,代码体可以直接放在冒号后面。例如:
if a > 3:print("a")
def f():print("a")
class F:pass
括号类型包围的内容,包括列表的中括号[]、集合或字典的大括号{}、元组或表达式或包围函数参数的小括号(),它们可以随意换行。
例如:
a = "aaa" + "bbb"
a = ("aaa" +
"bbb")
L = [11,22,33,44]
L = [11,22,
33,44]
D = {"k1":"v1", "k2":"v2", "k3":"v3"}
D = {"k1":"v1",
"k2":"v2",
"k3":"v3"}
if a > 3: print(a)
if (a >
3):print(a)
python语法风格的更多相关文章
- Python 代码风格
1 原则 在开始讨论Python社区所采用的具体标准或是由其他人推荐的建议之前,考虑一些总体原则非常重要. 请记住可读性标准的目标是提升可读性.这些规则存在的目的就是为了帮助人读写代码,而不是相反. ...
- python代码风格-PEP8
转载自http://www.douban.com/note/134971609/ Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下 ...
- 【转】python代码风格-PEP8
转载自http://www.douban.com/note/134971609/ Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下 ...
- 转---Google Python编程风格指南
为帮助读者能够将代码准确格式化,我们提供了针对 Vim的配置文件 .对于Emacs用户,保持默认设置即可. 背景 Python 是 Google主要的脚本语言.这本风格指南主要包含的是针对python ...
- Python 编码风格指南
原文:http://python.jobbole.com/84618/ 本文超出 PEP8 的范畴以涵盖我认为优秀的 Python 风格.本文虽然坚持己见,却不偏执.不仅仅涉及语法.模块布局等问题,同 ...
- (转)PEP 8——Python编码风格指南
PEP 8——Python编码风格指南标签(空格分隔): Python PEP8 编码规范原文:https://lizhe2004.gitbooks.io/code-style-guideline-c ...
- 4、Python语法之变量
一 引入 我们学习Python语言是为了控制计算机.让计算机能够像人一样去工作,所以在Python这门语言中,所有语法存在的意义都是为了让计算机具备人的某一项技能,这句话是我们理解后续所有Python ...
- Python基础部分:5、 python语法之变量与常量
目录 python语法之变量与常量 一.什么是变量与常量 1.什么是变量 2.什么是常量 二.变量的基本使用 1.代码中如何记录事物状态 2.变量使用的语法结构与底层原理 3.变量名的命名规范 4.变 ...
- 对 Python 语法不够了解导致的 bug
对 Python 语法不够了解导致的 bug. `in` '20' in '11264,6144,4096,3072,2048,1024,300,30' Out[7]: True a_list = ' ...
随机推荐
- JavaScript基础视频教程总结(051-060章)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- 写给笨蛋徒弟的学习手册(3)—C#中15个预定义数据类型
在C#中学习中,你会很早的遇到预定义数据类型这个概念,但你有没有仔细想过它存在的意义?正所谓“存在即合理”,预定义数据类型的存在目的主要有俩个方面,一是为了增加程序的安全性,同时减轻编译器负担,加快编 ...
- python之路(八)-迭代器&生成器
迭代器 迭代器是访问集合元素的一种方式.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退,不过这也没什么,因为人们很少在迭代途中往后退.另外,迭代器的一大优点是 ...
- Python核心团队计划2020年停止支持Python2,NumPy宣布停止支持计划表
Python核心团队计划在2020年停止支持Python 2.NumPy项目自2010年以来一直支持Python 2和Python 3,并且发现支持Python 2对我们有限的资源增加了负担:因此,我 ...
- Unity3D在移动平台下加载AssetBundle导致Shader效果不正确的问题
这个问题,主要还是在移动平台下开发导致的. 在编辑器里调试加载AB时会导致Shader效果不正确的原因,主要还是编辑器下加载以IOS或是ANDROID平台打包的AB它所使用的shader已经编译成对应 ...
- List、Set、数据结构、Collections
一.数据结构: 1.什么是数据结构: 一种数据的存储方式 2.常见的4+1种数据结构 堆栈结构: 它是只有一个开口的容器结构 特点: 先进后出(FILO) 例子:弹夹,桶装可比克 队列结构: 它是两端 ...
- Linux 常用分区方式
1 分两个区 主目录:/ 交换分区:swap 2 常用分区方式,以使用100G空间安装linux为例 引导分区: 挂载点/boot,分区格式ext4,500M以内即可 交换分区: 无挂载点,分区格式选 ...
- [转]Rapidly detecting large flows, sFlow vs. NetFlow/IPFIX
Figure 1: Low latency software defined networking control loop The articles SDN and delay and Delay ...
- Openvswitch手册(7): Interfaces
我们来看Interfaces ofport: OpenFlow port number for this interface. type: system: An ordinary network de ...
- [升级说明] Senparc.Weixin.MP v14.8.11 (微信群发接口调整)
升级内容:添加根据标签群发接口,重构原根据分组群发接口 参考微信文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp14811 ...