# 小白学 Python(二)
# 前言
Python
是一门遵循严格的代码缩进的编程语言。
跟其它语言用 {}
来区分代码块类似, Python
是用冒号 :
和缩进来区分代码块 (冒号后相同缩进量为同一代码块)。
一般情况下,一个 Tab 键就是一个缩进量 (即四个空格)。
# 分支结构
和其它编程语言不同的是,python 的分支结构 (在 3.10
之前的版本),只有 if 语句
。
Python 程序语言指定任何非 0 和非空(null)值为 true,0 或者 null 为 false。
# 基本形式
''' *单条 if 语句* ''' | |
if <判断表达式>: | |
执行语句块 # 语句块的每个语句的缩进量必须相同 | |
''' *if...else 语句* ''' | |
if <判断表达式>: | |
执行语句块 # 判断表达式结果为 true 时执行的语句块 | |
else: | |
执行语句块 # 判断表达式结果为 false 时执行的语句块 | |
''' *if...elif..else 语句* ''' | |
if <判断表达式1>: | |
执行语句块 # 判断表达式 1 结果为 true 时执行的语句块 | |
elif <判断表达式2>: | |
执行语句块 # 判断表达式 2 结果为 true 时执行的语句块 | |
# 任意数量的 elif 语句 | |
else: | |
执行语句块 # 以上判断表达式结果均为 false 时执行的语句块 |
# 案例展示
案例一
''' *单条 if 语句* ''' | |
age = 18 | |
if age >= 18: | |
print("我已经成年了") |
案例二
''' *if...else 语句* ''' | |
age = 18 | |
if <判断表达式>: | |
print("我已经成年了") | |
else: | |
print("我还未成年") |
案例三
''' *if...elif..else 语句* ''' | |
a, b, c = map(int, input("请分别输入三角形的三条边:").split()) | |
if a+b <= c: | |
print("这不是个三角形") | |
elif a+c <= b: | |
print("这不是个三角形") | |
elif b+c <= a: | |
print("这不是个三角形") | |
else: | |
print("这是个三角形") |
# 循环结构
# for 循环
for 循环可以遍历任何序列的项目,如一个列表或者一个字符串。
# 依次输出 'Python' 的每一个字符 | |
for i in 'Python': | |
print(i) | |
# 依次输出 [0,n) 之间的数 | |
for i in range(n): | |
print(i) |
除了普通的用法外, Python
还有一种 for...else
的用法。
其中,else 中的语句会在循环正常执行完 (即 for 不是通过 break 跳出而中断的) 后执行。
# 判断 2 到 99 之间的数,哪个是质数,哪个不是 | |
for num in range(2, 100): # 产生一个包含 1~99 的数的序列 | |
for i in range(2,num): | |
if num%i == 0: # 判断 num 除了 1 和其本身之外,是否还有其它因数 | |
print('%d 不是一个质数' % num) | |
break | |
else: | |
print ('%d 是一个质数' % num) |
# while 循环
while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。
# 基本形式 | |
while 判断表达式: | |
循环体 | |
# 案例 | |
a = 0 | |
while a < 3: | |
a += 1 | |
print("重要的事情说三遍") |
while
也有如 for
一样的特殊用法,即 while...else
用法,具体方法和 for
类似。
注意: 在写 while 语句时,一定要注意循环停止条件,否则容易造成死循环;当遇到死循环时,可通过快捷键 Ctrl + C 停止程序。
# 重要命令
break
—— 跳出当前循环
continue
—— 跳过此次循环