Python开发(人工智能/大数据/机器学习)

9.Python编程:流程控制

2018-03-28  本文已影响18人  TensorFlow开发者

计算机程序之所以可以做非常复杂的事情,就是因为它可以处理条件和循环。本文就来了解Python中的流程控制语句:条件判断、循环控制。

Python3 条件控制

所有的高级编程语言都支持条件判断,只是语法略微不同。在Java\C\OC\Swift中,都是

if(条件1){ 
    语句块1
 } else if(条件2){ 
    语句块2
 } else{
    语句块3
}

在Python中,仅仅语法格式、关键词发生了变化而已:if – elif – else。具体如下:

    if 条件1:
        语句块1
    elif 条件2:
        语句块2
    else:
        语句块3
条件流程图

Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else。
注意:
1、每个条件后面要使用冒号:,表示接下来是满足条件后要执行的语句块。
2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
3、在Python中没有switch – case语句。

比较操作符

条件判断举例:

让用户输入一个整数,判断该数字是奇数还是偶数。

# 定义一个函数,来判断一个数字是奇数还是偶数
def isOddNumber(num):

    if int(num) % 2 == 0:
        return num + "是偶数"
    else:
        return num + "是奇数"

num = input("请输入一个整数:\n")
print(isOddNumber(num))

运行结果:

请输入一个整数:
113
113是奇数

上面例子涉及到函数的使用,后面会详细讲解函数的用法。

Python3 循环语句

Python中的循环语句有 for 和 while。
Python循环语句的控制结构图如下所示:


Python3 循环语句

while循环

基本格式:

while 判断条件:
    语句块

或while 循环使用 else 语句:
格式:

while 判断条件:
    语句块1
else:
    语句块2

同样需要注意冒号和缩进。另外,在Python中没有do..while循环。

# 计算从1--100的和
#  while循环
total = 0
j = 0
while j <= 100:
    total += j
    j = j + 1

print("while循环:1 + 2 + 3 + ...+ 99 + 100 = " + str(total))

运行结果:
while循环:1 + 2 + 3 + ...+ 99 + 100 = 5050

for循环

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
for循环的一般格式如下:

for x in 列表或字符串:
    语句块1

例如,求1--100的和

# 计算从1--100的和
#  for循环
sum = 0
for i in range(1, 101):
    sum += i
print("for循环:1 + 2 + 3 + ...+ 99 + 100 = " + str(sum))

运行结果:
for循环:1 + 2 + 3 + ...+ 99 + 100 = 5050

解析:
1. range()函数是Python内置的一个函数。该函数可创建一个整数列表,一般用在 for 循环中。
该函数的基本格式:range(start, stop[, step])。start:开始值,默认0;stop:结束值;step: 步长,也叫跨度,默认1。
range(1, 101):目前暂时可以理解为生成一个1-101(不包含101)的整数列表。在本文结尾,详细补充讲解该range()函数。
2.同样要注意for循环的格式中的冒号和缩进。

拓展:Python range() 函数用法

前面在讲解for循环时简单提到:range()函数是Python内置的一个函数。该函数可创建一个整数列表,一般用在 for 循环中。
该函数的基本格式:range(start, stop[, step])。
参数说明:
start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

所以:range(5) 等价于range(0, 5), 也等价于 range(0, 5, 1),都代表了:[0, 1, 2, 3, 4]

for x in range(5):
    print(x)

运行结果:

0
1
2
3
4

再如:range(0, 10, 3),表示从0开始,到10结束,步长为3,符合条件的按顺序组成了:[0, 3, 6 , 9]

for x in range(0, 10, 3):
    print(x)

运行结果:

0
3
6
9

小结

计算机程序最擅长做的就是有规律的事情,这往往就会用到循环,而对于特殊情况,就是条件判断。本文重点介绍了Python3中的循环和条件判断,熟练掌握这些基础知识,将在以后有助于提高开发效率。最后还拓展了一个range()函数的用法。


更多了解,可关注微信公众号:人人懂编程


微信公众号:人人懂编程
上一篇下一篇

猜你喜欢

热点阅读