人们常说人生就是一个不断做选择题的过程:有的人没得选,只有一条路能走;有的人好一点,可以二选一;还有一些人在人生的迷茫期会在原地打转,找不到方向。
编程语言,如Python,可以模拟人类生活的方方面面,通过编程语言中特殊关键字控制程序的执行过程,这些关键字有循环用的for或while,还有条件判断用的if、else等。
3.1 条件语句
所谓的条件,指的就是满足什么条件,允许做什么事,不满足时,是不允许做的。如共享单车,规定满12周岁或以上才可以骑行,没满的则不被允许。三思而后行,再,斯可矣。Python的条件语句有if、if-else和elif语句三种。
1.if语句
如果判断条件为True,就执行if语句内的内容,否则不执行。if的语法结构为:
if 判断条件:
执行语句1
执行语句…
|
输出结果
|
2.if-else语句
如果if的判断条件的结果为True,就执行里面的语句,否则执行else内的语句。if-else的语法结构为:
if 判断条件:
执行语句1
执行语句…
else:
执行语句1
执行语句…
|
输出结果
|
3.if-elif语句
如果if的判断条件1的结果为True,就执行里面的语句,如果判断条件2的结构为True,执行elif内的语句,否则执行else里的语句。if-else的语法结构为:
if 判断条件1:
执行语句1
执行语句…
elif 判断条件2:
执行语句1
执行语句…
else:
执行语句1
执行语句…
|
输出结果
|
4.if嵌套语句
条件语句可以进行嵌套。
|
输出结果
|
5.三元运算符
三元运算又称三目运算,是对简单的条件语句的简写。
if 条件成立:
result = “可骑行”
else:
result = “不可骑行”
改成三元运算是: result =“可骑行” if 条件成立 else “不可骑行”。满足条件,执行前面的语句,不满足,执行后面的语句。
|
输出结果
|
6.switch-case
Python3 没有switch-case语句,查看官方文档说是可以用if-elseif-elseif…代替。实现switch-case需要被判断的变量是可哈希的和可比较的,这与Python倡导的灵活性有冲突,所以没有支持。如果确实有必要,可通过函数的字典的方式实现。
|
输出结果
|
3.2 for循环
for循环可以遍历任何序列的元素,如逐个输出字符串、列表、字典或元组等中的元素。它是一种迭代循环机制。通俗点说,就是把这个循环中的第一个元素到最后一个元素依次访问一次,并把访问到的元素供执行语句使用。
1.for语句
for循环从序列里逐个取出元素,并赋值给迭代变量,以供执行语句使用,语法结构为:
for 迭代变量 in 遍历序列:
执行语句1
执行语句…
|
输出结果
|
2.range()函数
可以使用内置range()函数,生成数列,并通过for循环取出元素。range(start,end,step=1)顾头不顾尾。
range(5): 默认step=1,start=0,生成数列内容为:[0, 1, 2, 3, 4];
range(1,5):指定start=1,end=5,默认step=1,生成数列内容为:[1, 2, 3, 4]
range(1,5,2):指定start=1,end=5,step=2,生成数列内容为: [1, 3]
|
输出结果
|
3.索引迭代
除了可通过遍历的方式获取元素外,还可以通过索引迭代的方式获取。用索引迭代时,先通过内置函数len()获取列表的长度,再逐个迭代。
|
输出结果
|
4.嵌套语句
for循环允许在一个循环体里面嵌入另一个循环。语法结构为:
for 迭代变量1 in 遍历序列1:
执行语句1
for 迭代变量3 in 遍历序列2:
执行语句2
执行语句…
|
输出结果
|
5.列表推导
Python中的for循环,除了可以遍历元素外,还可以进行列表推导。列表推导是一种简化代码的优美方法。推导式是可以从一个数据序列构建另一个新的数据序列的结构体。语法结构为:
[表达式 for 变量 in 列表] 或者 [表达式 for 变量 in 列表 if 条件]
|
输出结果
|
6.跳出循环
Python语言的跳出循环与大多数语言一样,可以使用关键字continue跳出本次循环。
|
输出结果。
|
用break跳出整个for循环
|
输出结果
|
另外还有return语法,会跳出for循环。
|
输出结果
|
7.for-else语句
如果在循环正常(非break 跳出)执行完,需要执行一些其他动作时,可在后面添加else语句。除了else外,还有一种特殊情况,就是会出现一个语句体什么也不做的情况,这时用pass语句进行占位。它是空语句,什么都不做,只要是保持程序结构的完整性。
正常退出循环,会执行else内容。
|
输出结果
|
通过break非正常退出循环,不会执行else内容。
|
输出结果
|
3.3 while循环
while 循环用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。for循环和while循环,两者的相同点在于都能循环做一件重复的事情;不同点在于,for循环是在序列穷尽时停止,while循环是在条件不成立时停止。
1.while语句
while循环通过判断条件,确认是否执行语句。条件为True时,执行语句,否则退出循环。语法结构为:
while 判断条件:
执行语句1
执行语句…
|
输出结果
|
2.嵌套语句
while循环允许在一个循环体里面嵌入另一个循环。语法结构为:
while 判断条件1:
执行语句1
while 判断条件2:
执行语句…
|
输出结果
|
3.while嵌for
while循环里面可以嵌套for循环。
|
输出结果
|
for循环里面可以嵌套while循环。
|
输出结果
|
4.跳出循环
Python语言的跳出循环与大多数语言一样,可以使用关键字continue跳出本次循环。
|
输出结果
|
使用break跳出整个while循环。
|
输出结果
|
还有return语法,会跳出while循环。
|
输出结果
|
5.while-else
如果想在循环正常(非break跳出)执行完,需要执行一些其他动作时,可在后面添加else语句。除了else外,还有一种特殊情况,就是会出现一个语句体什么也不做的情况,这时用pass语句进行占位。它是空语句,什么都不做,只要是保持程序结构的完整性。
正常退出while循环,会执行else里面的内容。
|
通过break非正常退出,不会执行else里面的内容。
|
控制语句,就在不知不觉中学完了。