Python学习笔记(3)控制结构

if语句:

  • Python使用if-elif-else描述多分支决策,简化分支结构的嵌套问题.
  • 可能会有零到多个elif部分,else是可选的。关键词elif是else if 的缩写,这可可以有效避免过深的缩进。if…elif….elif序列用来替代其他语言中的switch或case语句。

例如:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
print("请输入(0-3)的一个整数:")
x = int(input())
if x == 0:
print("输入的数为0")
elif x == 1:
print("输入的数为1")
elif x == 2:
print("输入的数为2")
elif x == 3:
print("输入的数为3")

程序运行结果:
请输入(0-3)的一个整数:
2
输入的数为2
>>>

for语句:

Python中的for语句和C中的略有不同。通常循环可能会依据一个等差数值步来进行,或者有用户自定义迭代步骤和终止条件。Python的for语句依据任意序列(列表或字符串)中的子项,按它们在序列中的顺序来进行迭代。

1
2
3
4
5
6
7
8
9
10
>>> list1 = [1,2,3,4,5,6]
>>> for i in list1:
print(list1[i-1])
1
2
3
4
5
6
>>>

range()函数:

如果你需要一个数值序列,内置函数range()会很方便,它生成一个等差级数列表。range(5,10),定义了5到10的等差数列。range(0,10,2)定义了0到10以2为步长增长的数列。

1
2
3
4
5
6
7
>>> for i in range(1,10,2):
print(i)
1
3
5
7
9

break和continue语句以及循环中的else子句:

  • break语句和C中的类似,用于跳出最近一级的循环.
  • continre语句只是结束本次循环,而不是结束整个循环的执行。
  • 循环中可以有一个else子句,它在循环迭代完整个列表后(对于for)或执行条件为false(对于while)时执行,但循环被break中止的情况下不会执行。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
for n in range(2,10):
for x in range(2,n):
if(n % 2 ==0):
print(n, "是2的倍数")
break
else:
print(n, "不是2的倍数")

#程序运行结果:
2 不是2的倍数
3 不是2的倍数
42的倍数
5 不是2的倍数
62的倍数
7 不是2的倍数
82的倍数
9 不是2的倍数
>>>

pass语句:

pass语句什么也不做。它用于那些语法上必须要有的什么语句,但程序什么也不做的场合。

另一方面,pass可以在创建新代码时用来做函数或控制体的占位符。可以让你在更抽象的级别上思考。pass可以默默的被忽视。

def语句:

关键字def引入了一个函数的定义。在其后面必须跟有函数名和包括形式参数的圆括号。函数体语句从下一行开始,必须是缩进的。

函数:

使用函数的目的:

  1. 降低编程的难度
  2. 代码重用

函数调用执行的四个步骤:

  1. 调用程序在调用处暂停执行
  2. 函数的形参在调用时被赋值为实参
  3. 执行函数体
  4. 函数被调用结束,给出返回值

函数的返回值:

  • return语句:程序退出该函数,并返回到函数被调用的地方
  • return语句返回的值传递给调用程序
  • Python函数的返回值有两种形式:返回一个值,返回多个值
  • 无返回值的return语句等价于return None
  • 返回值可以是一个变量,也可以是一个表达式。

异常处理:

Python使用try…except…来进行异常处理,基本格式如下:

1
2
3
4
5
6
try:
<body>
except <ErrorEype1>:
<handler1>
except <ErrorEype2>:
<handler2>

当Python解释器遇到一个try语句,它会尝试执行try语句体内的语句
如果没有错误,控制转到try-except后面的语句如果发生错误,Python解释器会寻找一个符合该错误的异常语句,然后执行处理代码.

坚持原创技术分享,您的支持将鼓励我继续创作!