Python流程控制
if条件分支语句
Python条件语句就是通过一条或者多条语句执行的结果(True/False)来决定执行的代码块。
-
if单分支语句
if 逻辑语句: 语句块
demo:
print("Hello,Python") if False: print("向Python致敬,我正在学习Python") print("Welldone.")
learning = "Python" if learning == "Python": print("呵呵,我也在学习Python") print("Nice to meet you")
-
if双分支语句
if 逻辑语句1: 语句块1 else: 语句块2
demo:
learning = "Java" if learning == "Python": print("呵呵,我也在学习Python.") else: print("小明和你一样,也在学习Java.") print("Nice to meet you.")
learning = input("请输入你学习的编程语言:") if learning == "Python": print("呵呵,我也在学习Python.") else: print("小明和你一样,也在学习Java.") print("Nice to meet you.")
-
if多分支语句
C语言中
if if if else else else
Python:将else if缩写为elif
if 逻辑语句1: 语句块1 elif 逻辑语句2: 语句块2 elif 逻辑语句3: 语句块3 ... else: 语句块n
(1)根据百分制考试成绩返回五级分制成绩。
90-100:A
80-90:B
70-80:C
60-70:D
0-60:E
score = int(input("请输入你的成绩:"))
if score in range(90,101):
print("你的五级制成绩为:A")
elif score in range(80,91):
print("你的五级制成绩为:B")
elif score in range(70,81):
print("你的五级制成绩为:C")
elif score in range(60,71):
print("你的五级制成绩为:D")
elif score in range(0,61):
print("你的五级制成绩为:E")
else:
print("你输入的成绩无效.")
(2)从控制台输入一个三位数,判断其是否为水仙花数。
153 = 1 3 + 5 3 + 3 3 153=1^3+5^3+3^3 153=13+53+33
num = int(input("请输入一个数:"))
if num == (num//100)**3 + (num%100//10)**3 + (num%10)**3:
print("该数为水仙花数.")
else:
print("该数不为水仙花数.")
while语句
-
循环语句
- 所谓循环,就是用来把部分代码在一定条件下重复执行的代码。
格式:
while 逻辑语句: 语句块
(1)利用while来打印1-200的数字:
i = 1
while True:
print(i)
if i == 200:
break
i +=1
(2)利用while求1-100的和
i = 1
sum = 0
while i <= 100:
sum += i
i +=1
print(sum)
(3)利用while求1-100内所有的偶数和
count = 1
sum = 0
while count <= 100:
if count %2 == 0:
sum += count
count += 1
print(sum)
(4)求100-999内的所有水仙花数
count = 100
while count <= 999:
if count == (count//100)**3 + (count%100//10)**3 + (count%10)**3:
print(count,end = " ")
count += 1
for循环
python中for可以用来遍历任何序列(字符串,列表,元组,etc),for循环自带自增
格式:
for i in 序列:
语句块
1.range()
range(end) # [0,end-1],end为整数
range(start,end) # [start,end-1],均为整数
range(start,end,step) # [start,start+step,start+2*step,...,end),均为整数
(1)利用for来打印1-200的数字:
for i in range(1,201):
print(i,end = " ")
(2)利用for求1-100的和
sum = 0
for i in range(1,101):
sum += i
print(sum)
(3)利用for求1-100内所有的偶数和
sum = 0
for i in range(1,101):
if i % 2 == 0:
sum += i
print(sum)
(4)求100-999内的所有水仙花数
for i in range(100,1000):
if i == (i//100)**3 + (i%100//10)**3 + (i%10)**3:
print(i,end = " ")
break和continue
- break用来结束一个循环,跳出循环体。
- continue终止本次循环的动作,直接进入下一次循环。
while…else…和for…else…
while…else和for…else中while和else是一块的,for和else也是一块的。
当有break或者return的时候就会跳出while。如果没有break或者return,不管while是否执行都会执行else。
demo:
count = int(input("Enter a int:"))
while False:
print(count,end = " ")
count += 1
if count ==3:
break
else:
print("这里是else语句.")