Python基础分享之缩进和选择

简介: Python基础分享之缩进和选择

缩进

Python最具特色的是用缩进来标明成块的代码。我下面以if选择结构来举例。if后面跟随条件,如果条件成立,则执行归属于if的一个代码块。

先看C语言的表达方式(注意,这是C,不是Python!)

if ( i > 0 )
{
    x = 1;
    y = 2;
}


如果i > 0的话,我们将进行括号中所包括的两个赋值操作。括号中包含的就是块操作,它隶属于if。

在Python中,同样的目的,这段话是这样的

if i > 0:
    x = 1
    y = 2


在Python中, 去掉了i > 0周围的括号,去除了每个语句句尾的分号,表示块的花括号也消失了。


多出来了if ...之后的:(冒号), 还有就是x = 1 和 y =2前面有四个空格的缩进。通过缩进,Python识别出这两个语句是隶属于if。


Python这样设计的理由纯粹是为了程序好看。


if语句


写一个完整的程序,命名为ifDemo.py。这个程序用于实现if结构。


i = 1
x = 1
if i > 0:
    x = x+1
print x


$python ifDemo.py  # 运行


程序运行到if的时候,条件为True,因此执行x = x+1,。


print x语句没有缩进,那么就是if之外。


如果将第一句改成i = -1,那么if遇到假值 (False), x = x+1隶属于if, 这一句跳过。 print x没有缩进,是if之外,不跳过,继续执行。


这种以四个空格的缩进来表示隶属关系的书写方式,以后还会看到。强制缩进增强了程序的可读性

复杂一些的if选择:

i = 1
if i > 0:
    print 'positive i'
    i = i + 1
elif i == 0:
    print 'i is 0'
    i = i * 10
else:
    print 'negative i'
    i = i - 1
print 'new i:',i


这里有三个块,分别属于if, elif, else引领。

Python检测条件,如果发现if的条件为假,那么跳过后面紧跟的块,检测下一个elif的条件; 如果还是假,那么执行else块。

通过上面的结构将程序分出三个分支。程序根据条件,只执行三个分支中的一个


整个if可以放在另一个if语句中,也就是if结构的嵌套使用:

i  = 5
if i > 1:
    print 'i bigger than 1'
    print 'good'
    if i > 2:
        print 'i bigger than 2'
        print 'even better'


if i > 2 后面的块相对于该if缩进了四个空格,以表明其隶属于该if,而不是外层的if。


小结


if语句之后的冒号


以四个空格的缩进来表示隶属关系, Python中不能随意缩进


if  <条件1>:


   statement


elif <条件2>:


   statement


elif <条件3>:


   statement


else:


   statement

相关文章
|
23天前
|
人工智能 开发工具 Python
[oeasy]python040_缩进几个字符好_输出所有键盘字符_循环遍历_indent
本文探讨了Python代码中的缩进问题。通过研究`range`函数和`for`循环,发现缩进对于代码块的执行至关重要。如果缩进不正确,程序会抛出`IndentationError`。文章还介绍了Python的PEP8规范,推荐使用4个空格进行缩进,并通过示例展示了如何使用Tab键实现标准缩进。最后,通过修改代码,输出了从0到122的字符及其对应的ASCII码值,但未能找到竖线符号(`|`)。文章在总结中提到,下次将继续探讨竖线符号的位置。
12 0
|
5月前
|
IDE Java 开发工具
python缩进错误(IndentationError)
【7月更文挑战第12天】
711 10
|
5月前
|
IDE 开发工具 Python
python中语法缩进错误处理
【7月更文挑战第8天】
59 2
|
7月前
|
IDE 开发工具 Python
Python应用语法中缩进错误
【5月更文挑战第18天】
52 1
|
7月前
|
Python
Python应用中语法不正确的缩进
【5月更文挑战第17天】
36 1
|
7月前
|
IDE 开发工具 Python
Python中IndentationError(缩进错误)
【5月更文挑战第13天】
254 6
|
7月前
|
IDE 开发工具 Python
Python应用中缩进错误(IndentationError)
【5月更文挑战第16天】
158 2
|
7月前
|
存储 Python
Python基础语法之注释、缩进、数字类型、一句多行和多行一句等的讲解及演示(超详细 附源码)
Python基础语法之注释、缩进、数字类型、一句多行和多行一句等的讲解及演示(超详细 附源码)
94 0
|
7月前
|
IDE 开发工具 C++
python中的缩进错误
【4月更文挑战第23天】
78 2
|
7月前
|
Java 程序员 编译器
初识Python(注释、代码缩进、编码规范、标识符、变量)
初识Python(注释、代码缩进、编码规范、标识符、变量)
108 2