一、条件判断
条件判断,也就是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。用到关键字有if,elif,else。
1、语法格式:
1、最简单的条件判断语句:
if :
表示条件判断语句返回为True时,执行代码块中的语句,否则不执行。
ps:if后面条件判断后要跟冒号:,执行的代码块之前要缩进,否则不属于if条件判断下的代码块。
例如:
if 3 in [1, 2, 3]:
print("属于这个list")
执行结果:属于这个list
2、if...else条件判断:
if :
else:
表示当条件判断为True时,执行代码块1中的语句,否则执行代码块2中的语句。同样注意,在代码块1和代码块2之前要缩进。
score = 51
if score >= 60:
print("及格")
else:
print("不及格")
执行结果:不及格
3、最完整的条件判断语句:
if :
elif :
elif :
else:
elif是else if的缩写,依然通过对条件的判断进行执行对应的代码块。例如:
score = 74
if score > 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
执行结果:及格
2、if的嵌套
if的条件判断语句可以多层嵌套,如在嵌套 if 语句中,可以把 if...elif...else 结构放在另外一个 if...elif...else 结构中。
if :
if :
elif :
else:
elif :
elif :
else:
例如:
num = int(input("输入一个数字:"))
if num % 2 == 0:
if num % 3 == 0:
print("你输入的数字可以整除2和3")
else:
print("你输入的数字可以整除2,但不能整除3")
else:
if num % 3 == 0:
print("你输入的数字可以整除3但不能整除2")
else:
print("你输入的数字不能整除2和3")
执行结果:
输入一个数字:6
你输入的数字可以整除2和3
二、循环语句
Python中的循环语句有两种,for循环 和 while循环。
1、for循环
在Python中, for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
1、语法
for循环的一般格式如下,分为简单形式和完整形式,即else代码块可省略:
简单形式:
for in :
完整形式:
for in :
else:
ps:else中的代码块在for循环结束之后执行。
例如,求1~10的和,通过for循环依次累加:
sum = 0
for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:
sum = sum + x
print(sum)
循环一个list中的所有元素:
languages = ["Python", "Java", "Android", "Ruby"]
for x in languages:
print(x)
else:
print("循环执行结束")
执行结果:
Python
Java
Android
Ruby
循环执行结束
2、range()函数
如果我们需要遍历数字序列,可以使用Python内置的 range() 函数。会生成一个整数数列。
a、 rang(n) 表示生成一个0到n(不含n)的整数数列,例如:
for i in range(5):
print(i, end=" ")
执行结果:
0 1 2 3 4
b、也可以指定区间的值,rang(n, m)表示生成一个从n到m(不含m)的整数数列:
for i in range(5, 9):
print(i, end=" ")
执行结果:
5 6 7 8
c、使range()以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'),语法格式:rang(n, m, l)
for i in range(0, 10, 3):
print(i, end=" ")
执行结果:
0 3 6 9
负数:
for i in range(-10, -100, -30):
print(i, end=" ")
执行结果:
-10 -40 -70
2、while循环
while循环和for循环类似,也分为简单形式和完整形式两种,不同的是while循环需要满足条件才可执行循环体(代码块),而且同样需要注意冒号和缩进。
1、语法
简单形式:
while :
完整形式:
while :
else:
例如,求1~100的总和:
count = 1
max = 100
sum = 0
while count <= max:
sum += count
count += 1
else:
print("循环结束")
print("1到%d之和为: %d" % (max, sum))
执行结果:
循环结束
1到100之和为: 5050
2、无限循环
既然while循环是通过条件判断来决定是否执行循环,那么只要条件一直为True的话,那么将成为无限循环,也就是通常说的死循环。如下面两个例子都为死循环:
var = 1
while True: # 表达式永远为 true
num = int(input("输入一个数字 :"))
print("你输入的数字是: ", num)
while True:
print("Hello Python")
3、break语句和continue语句
break语句可以跳出for和while的循环体,即结束循环。而且循环体内break后的语句和else块将不执行。
continue语句则是结束本次循环,跳过continue后的语句,直接执行下一次循环,且else块仍会执行。
以下是for循环中使用了break语句的例子:
languages = ["Python", "Java", "Android", "Ruby"]
i = 0
for x in languages:
print(x)
if i == 2:
break
i += 1
else:
print("循环执行结束")
执行结果:
Python
Java
Android
以下是for循环中使用了continue语句的例子:
for c in 'Python':
if c == 'o':
continue
print(c, end=" ")
else:
print("\n循环结束")
执行结果:
P y t h n
循环结束
4、pass语句
Python中的pass是空语句,是为了保持程序结构的完整性。pass语句不做任何事情,一般用做占位语句,如下:
if a == 1:
pass
while a != 1:
pass