您的位置:首页 > 编程语言 > Python开发

【原创】Python第二章——行与缩进

2015-05-20 15:58 134 查看
Python的基本组成——逻辑行和缩进

a="我是一个物理行"
a="""我是一个逻辑行
因为我一条语句便跨越了2个物理行"""


Python程序的最基本的组成元素是语句,一条语句可以占有一个物理行,过长的语句可以占有多个物理行,此时这多个物理行组成了一个逻辑行,它们在物理上虽然跨越多行,但是逻辑上是属于同一部分。每个物理行的结尾可以是注释,#之后到物理行结尾为止的所有字符都是注释部分,Python解释器将忽略注释部分。

空行:
一个只包含注释或空格的物理行,称为空行,Python将完全忽略这一行代码。另外需要注意的是,在交互式解释器中,开发者必须输入一个空的物理行,以终止一个多行语句。这个空的物理行不称为空行,它不带任何空格或注释。

如何表示跨行的逻辑行:
只有一行的逻辑行: 一般在Python中,物理行的结尾也就表示大多数语句的结束。
多行的逻辑行:这需要分情况说明
(1)'\'可以将两个相邻的物理行连接成一个逻辑行,这需要一个条件就是连接的第一个物理行必须没有注释,'\'添加到第一个物理行的后面,注意:'\'前面的空格会被当成是物理行的内容;
(2)[]、{}、()可以跨越物理行;
(3)三重引号字符串常量(包括单引号和双引号)时,也可以跨越多行,但是有一点必须注意的:换行的时候需要在物理行的结尾加上'\'斜杠,否则会将换行符包括进去。

跨行例子:

a=2                         #我只有一个物理行

a="我有两个\
物理行"                      #注意:第一行不能有注释,a结果为'我有两个物理行'

a="我有两个 \
物理行"                     #注意:'\'前有一个空格,第二行行首也有个空格,这两个空格都属于a的内容,a结果为'我有两个  物理行'

a=""" 我有两个
物理行"""                    #三重双引号 ,结果会是
'我有两个
物理行'

a=""" 我有两个\
物理行"""                    #三重双引号 ,结果会是'我有两个物理行 '

a=[2,3,
4,5]
或
a=[2,3,
4,5]                    #第二行的缩进不影响结果


缩进:
在C语言中有花括号来表示一个语句块。与其他语言不一样,Python没有使用花括号或者其他开始和结束的定界符来表示一个语句块。
缩进是Python表示语句块的唯一方法。

一个语句块中的所有语句必须使用相同的缩进,表示一个连续的逻辑行序列。

源文件的第一行不需要缩进(不允许以任何空格开始)。

另外需要注意一点的是:

n=int(input())
sum=0
while n>0:
if n%3==0 or n%5==0:
sum+=n
n-=1
print(sum)


n=int(input())
sum=0
while n>0:
if n%3==0 or n%5==0:
sum+=n     #修改了这一句
n-=1
print(sum)


Python会报错,说明在控制语句中,语句块内语句不仅需要相同的缩进,而且要保证整个语句块在整个控制语句有一定的缩进,表示该语句块是属于该控制语句的。

关于缩进风格:
标准Python风格是每个缩进级别是使用4个空格,永远不要使用Tab制表符!
因为不同编辑器,处理制表符的方式不同,有些会把它当成一个制表符,有的会将其看成是4个或4个以上的空格,因而会产生源代码中制表符和空格的使用不一的后果,违反了Python的缩进规则。当然可以设置编辑器在打入Tab键时将其替换成相应个数的空格。
Python的代码原则是代码只包含空格!

参考:
《Python技术手册》

本文链接:

/article/7044973.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: