一、条件语句
Python 中使用 if else
关键字表示条件语句。
if 表达式1:
语句块
elif 表达式2:
语句块
else:
语句块
注意事项:
条件表达式和else后面使用:作为结尾
跟C/C++不一样,if后边不需要跟括号
if / else
命中条件后要执行的 “语句块”, 使用 缩进 (通常是 4 个空格或者 1 个 tab)来表示, 而不是 { }
举个例子:
choice = input("选择A或者B: ")
if choice=="A":
print("答对了")
elif choice=="B":
print("答错了")
else:
print("输入错误")
1.1 缩进
Python中使用缩进来表示不同的代码块,不同级别的缩进,程序的执行效果是不同的。
a = input("请输入一个数字: ")
if a == "1":
print("aaaaaa")
print("bbbbbb")
这里如果输入2,那么什么都不会输出。
但是如果改成这样呢?
a = input("请输入一个数字: ")
if a == "1":
print("aaaaaa")
print("bbbbbb")
请输入一个数字: 2
bbbbbb
这点就说明print("bbbbbb")
并不属于条件语句。
# 1.
a = input("请输入一个数字: ")
if a == "1":
print("aaaaaa") # error
# 2.
a = input("请输入一个数字: ")
if a == "1":
print("aaaaaa")
print("bbbbbb") # error
上面这两种缩进就是错误代码。
1.2 嵌套
Python中的代码块也可以嵌套
a = input("请输入一个数字: ")
b = input("请输入一个数字: ")
if a == "1":
if b == "2":
print("aaaaaa")
print("bbbbbb")
print("cccccc")
解析一下:
用红色框框圈起来的都是if a == "1":
的语句块。
用红色框框圈起来的都是if b == "2":
的语句块。
1.3 空语句pass
a = input("请输入一个数字: ")
if(a == "1"):
# 什么都不做
else:
print("bbbbb")
这种就是错误的
Python语法规定,if语句、while语句、for语句、函数体、类定义等都不能为空,如果因为某些原因写了对应无内容的语句,就需要使用pass语句来避免语法报错。
正确的写法:
a = input("请输入一个数字: ")
if(a == "1"):
# 什么都不做
pass
else:
print("bbbbb")
二、循环语句
2.1 while循环
有些操作是需要反复执行的,这种就需要使用循环。
基本语法格式:
while 条件:
循环体
举个例子,打印1~5
a = 1
while a <= 5:
print(a)
a += 1
while跟前面的if一样都要使用缩进
在循环体当中使用break语句,可以跳出循环。
在循环体当中使用continue语句,可以停止当前的迭代,并继续下一次迭代。
如果使用了else语句,那么当循环条件不再成立时,会执行一次else代码块。
- 练习:计算5的阶乘
num = 1
# 结果是sum
sum = 0
while num <= 5:
tmp = 1
i = 1
while i <= num:
tmp *= i
i += 1
sum += tmp
num += 1
print(sum)
2.2 for循环
语法格式:
for 循环变量 in 可迭代对象:
循环体
for循环一般要与range函数搭配使用
- range函数
range是一个内建函数,其到的效果就是可以得到一个可迭代对象。
用法:range(begin, end) => [begin, end)
例如:打印1 ~ 10
for i in range(1, 11):
print(i)
但是如果想打印2 4 6 8……呢?
这就需要range函数的第三个参数步长(默认是1)
for i in range(2, 12, 2):
print(i)