说明
程序的控制结构分为三种:顺序结构、分支结构、循环结构
- 顺序结构
- 分支结构
- 循环结构
程序的分支机构
单分支结构
if <条件>:
<语句块>
guess = eval(input())
if guess==99:
print("猜对了")
二分支结构
if <条件>:
<语句块1>
else:
<语句块2>
guess1 = eval(input())
if guess1 == 99:
print("猜对了")
else:
print("猜错了")
#紧凑形式:适用于简单表达式的二分支结构
guess2 = eval(input())
print("猜{}了".format("对" if guess==99 else "错"))
多分支结构
if <条件1>:
<语句块1>
elif <条件2>:
<语句块2>
……
else:
<语句块N>
score = eval(input())
if score >= 60:
grade = "D"
elif score >= 70:
grade = "C"
elif score >=80:
grade = "B"
elif score >=90:
grade = "A"
print("输入成绩属于级别{}".format(grade))
条件判断及组合
操作符 | 数学符号 | 描述 |
---|---|---|
< | < | 小于 |
<= | ≤ | 小于等于 |
>= | ≥ | 大于等于 |
> | > | 大于 |
== | = | 等于 |
!= | ≠ | 不等于 |
操作符及使用 | 描述 |
---|---|
x and y | 两个条件x和y的逻辑:与 |
x or y | 两个条件x和y的逻辑:或 |
not x | 条件x的逻辑:非 |
guess = eval(input())
#如果用户输入的分数大于99分或小于99分,输出“猜错了”!
if guess > 99 or guess < 99:
print("猜错了")
else:
print("猜对了")
程序的异常处理
- 异常处理的一般使用
try:
<语句块1>
except <异常类型,可省略>:
<语句块2>
try:
num = eval(input("请输入一个整数"))
print(num**2)
except:
print("输入的不是整数")
try:
num = eval(input("请输入一个整数"))
print(num**2)
except NameError: #标注异常类型后,仅响应此异常,异常类型名字等同于变量名
print("输入的不是整数")
- 异常处理的高级使用
try:
<语句块1>
except:
<语句块2>
else:
<语句块3>
finally:
<语句块4>
else对应语句块3在不发生异常时执行 finally对应语句块4一定执行
程序的循环结构
遍历循环
for <循环变量> in <遍历机构> :
<语句块>
- 从遍历结构中逐一提取元素,放在循环变量中
- 由保留字 for 和 in 组成,完整遍历所有元素后结束
- 每次循环,所获得元素放入循环变量,并执行一次语句块
```python
计数循环(N次),由range()函数产生的数字序列,产生循环
for i in range(N):语句块
计数循环(特定次)
for i in range(M,N,K):
#语句块
字符串遍历循环
for c in s: #s是字符串,遍历字符串每个字符,产生循环
#语句块
列表遍历循环
for item in ls: #ls是一个列表,遍历其每个元素,产生循环
#语句块
文件遍历循环
for line in fi: #fi是一个文件标识符,遍历其每行,产生循环
#语句块
<a name="RB0qq"></a>
#### 无限循环
while <条件>:<br /><语句块><br />反复执行语句块,直到条件不满足时结束
```python
a = 3
while a>0:
a = a - 1
print(a)
循环控制保留字
break和continue
- break跳出并结束当前整个循环,执行循环后的语句
- continue结束当次循环,继续执行后续次数循环
- break和continue可以与for和while循环搭配使用
循环的高级用法
- 当循环没有被break语句退出时,执行else语句块
- else语句块作为“正常”完成循环的奖励
- 这里else的用法与异常处理中else用法相似
```python
for c in “PYTHON”:
if c==”T”:
print(c,end=””) else: print(“正常退出”)continue
输出 PYTHON正常退出
for c in “PYTHON” if c == “T”: break print(c,end=””) else: print(“正常退出”)
输出 PY
```