1. 分支结构
1. 1 单分支
if语句
#示例:猜数字
guess= eval(input())
if guess == 99:
print("猜对了")
1.2 二分支
if...+else 语句
#示例:猜数字
guess=eval(input())
if guess == 99:
print("猜对了")
else:
print("猜错了")
紧凑形式,适用于简单表达式的二分支结构
<表达式1> if <条件> else <表达式2>
#示例:猜数字
guess = eval(input())
print("猜{}了".format("对" if guess==99 else "错"))
1.3 多分枝结构
if ... + elif ... + else
2.条件判断及组合
2.1 条件判断
操作符 | 对应数学符号 | 描述 |
---|---|---|
< | < | 小于 |
<= | ≤ | 小于等于 |
>= | ≥ | 大于等于 |
> | > | 大于 |
== | = | 等于 |
!= | ≠ | 不等于 |
2.2 用于条件组合的保留字
操作符 | 描述 |
---|---|
x and y | 两个条件 x 和 y 逻辑 与 |
x or y | 两个条件 x 和 y 的逻辑 或 |
not x | 条件x 的逻辑 非 |
#示例:猜数字
guess=eval(input())
if guess > 99 or guess < 99 :
print("猜错了")
else:
print("猜对了")
3. 程序的异常处理
3.1 try... + except 语句
1.示例,捕获异常
try :
num = eval(input("请输入一个整数"))
print("这个数的2倍是:",num**2)
except :
print("输入的不是整数")
2.示例,捕获指定异常类型
try :
num = eval(input("请输入一个整数"))
print("这个数的2倍是:",num**2)
except NameError: #标注异常类型后,仅响应此类异常; 异常类型名字等同于变量名
print("输入的不是整数")
3.万能异常
try:
<语句>
except Exception:
print('异常说明')
3.2 高级使用
try... + except... + else... + finally:
1. 异常中的else,判断完没有某些异常后,执行else下的语句
try:
<语句>
except <异常名1>:
print('异常说明1')
except <异常名2>:
print('异常说明2')
else:
<语句> # try语句中没有异常则执行此段代码
2. 异常中的finally,无论是否发生异常,都将执行最后的finally下的语句
try:
<语句>
finally:
<语句>
4. 循环结构
4.1 遍历循环
for <循环变量> in <遍历结构>:
1. 计数循环
#语法 for i in range(M,N,K):
>>> for i in range(1,6):
print(i)
1
2
3
4
5
>>> for i in range(1,6,2):
print(i)
1
3
5
2. 字符串遍历循环
#语法 for c in s:
>>> for c in "python123":
print(c,end='.') #输出结果结尾用 '.' 代替默认的 \n换行符
p.y.t.h.o.n.1.2.3.
3. 列表遍历循环
#语法 for item in ls:
>>> for i in [123,'py',456]:
print(i,end=',')
123,py,456,
4.文件遍历循环
# for line in fi(外部文件)
4.2 无限循环
语法:while <条件>
1.示例
>>> a = 3
>>> while a > 0:
a=a-1
print(a,end='.')
2.1.0 #输出 2、1、0
4.3 循环控制保留字
break 和 continue
- break 跳出并结束当前整个循环,执行循环后面的语句
- continue 结束当次循环,继续执行后续次数的循环
- break 和 continue 可以与 for 和 while循环搭配使用
示例:
1. continue 示例
>>> for c in "python":
if c == "t":
continue
print(c,end=".")
p.y.h.o.n. #循环到t字符的时候, 跳过当次循环,继续取到h字符
2.break 示例
>>> for c in "python":
if c== "t":
break
print(c,end='.')
p.y. #循环到t字符时,直接结束循环的语法了
多层循环下,break 只跳出当前的内层循环
4.4 循环的扩展
循环与else
#1. for... + else:
for <变量> in <遍历结构>:
<语句块1>
else:
<语句块2>
#2. while... +else:
while <条件>:
<语句块1>
else:
<语句块2>
- 当循环没有被break语句退出时,执行else语句块
- else语句块作为'正常'完成循环的奖励
- 这里else的用法与异常处理中的else用法类似
示例
学习途径:中国大学mooc - 嵩天 - python语言程序设计