Python学习(流程控制)

一、Python的流程控制

1.1 if条件分支语句

Python条件语句就是通过一条或者多条语句执行的结果(Ture/False)来决定执行的代码块。

if 单分支语句
if 逻辑语句
	语句()

如:

if True:
    print("Hello")
    
learing = 'python'
if learing == 'python':
    print('learing python')
if 双分支语句
if 逻辑语句1:
	语句()1
else:
	语句()2

如:

learing = 'python'
if learing == 'Java':
    print('learing Java')
else:
    print('learing python')
if 多分支语句

elif:将else if缩写为elif

if 逻辑语句1:
    语句()1
elif 逻辑语句2:
    语句()2
    ……
elif 逻辑语句n-1:
    语句()n-1
else:
    语句()n

如:

score = int(input("请输入成绩(百分制):"))
if score > 100:
    print("数据错误")
elif 90 <= score:
    print("等级为A")
elif 80 <= score:
    print("等级为B")
elif 70 <= score:
    print("等级为C")
elif 60 <= score:
    print("等级为D")
elif 0 <= score:
    print("等级为E")
练习:

从控制台输入一个三位数,判断是否为水仙花数。

水仙花数: 153 = 1 3 + 5 3 + 3 3 153=1^3 +5^3 +3^3 153=13+53+33

#方法一
num = int(input("请输入一个三位数的数:"))
bai = num // 100
shi = num // 10 % 10
ge = num % 10
if bai ** 3 + shi ** 3 + ge ** 3 == num:
    print(str(num) + "是水仙花数")
else:
    print(str(num) + "不是水仙花数")
#方法二
num =input("请输入一个三位数的数:")
if len(num)!=3:
    print("数据错误")
elif int(num[0])**3 + int(num[1])**3 +int(num[2])**3 == int(num):
    print(num+"是水仙花数")
else:
    print(num + "不是水仙花数")
1.2 while 语句

所谓循环,就是用来执行部分代码在一定条件下重复执行的代码

格式:
while 逻辑语句:
    语句()

如:

i = 0
while True:
    print("I love python!")
    i += 1
    if i == 5:
        break
练习:

1.利用while来打印1~100的数字

2.利用while求1~100的和

3.利用while求1~100内的所有的偶数和

4.求100~999内的水仙花数

#1.利用while来打印1~100的数字
i = 1
while i <101:
    print(i,end=' ')
    i+=1
    
#2.利用while求1~100的和    
j = 1
sum_1 = 0
while j <101:
    sum_1 += j
    j+=1
print("1~100的和为:"+str(sum_1))

#3.利用while求1~100内的所有的偶数和
p = 1
sum_2 = 0
while p < 101:
    if p % 2 == 0:
        sum_2 += p
    p += 1
print("1~100的偶数和为:" + str(sum_2))

#4.求100~999内的水仙花数
q = 100
print("100~999的水仙花数有:",end="")
while q < 1000:
    bai = q // 100
    shi = q // 10 % 10
    ge = q % 10
    if bai ** 3 + shi ** 3 + ge ** 3 == q:
        print(q, end=" ")
    q += 1
1.3 for 循环语句

Python中for循环可以用来遍历任何序列(字符串、列表、元组等)

格式:
for i in 序列:
    语句()

如:

for i in range(2,101,2):
    print(i,end=" ")
练习:

1.利用for来打印1~100的数字

2.利用for求1~100的和

3.利用for求1~100内的所有的偶数和

4.求100~999内的水仙花数

#1.利用for来打印1~100的数字
for i in range(1, 101):
    print(i, end=" ")

#2.利用for求1~100的和
sum_1 = 0
for j in range(1, 101):
    sum_1 += j
print("1~100的和为:"+str(sum_1))

#3.利用for求1~100内的所有的偶数和
sum_2 = 0
for p in range(2,101,2):
    sum_2 += p
print("1~100的偶数和为:" + str(sum_2))

#4.求100~999内的水仙花数
print("100~999的水仙花数有:",end="")
for q in range(100,1000):
    bai = q // 100
    shi = q // 10 % 10
    ge = q % 10
    if bai ** 3 + shi ** 3 + ge ** 3 == q:
         print(q, end=" ")
    q += 1

二、语句补充

2.1 range()
range(end) #[0,end-1],end为整数
range(start,end) #[start,end],两个数都为整数
range(start,end,step) #[start,start+step,start+step*2,...,end),三个数都为整数

如:

for i in range(2,101,2):
    print(i,end=" ")
2.2 break 和 continue
  • break用来结束一个循环,跳出循环体
  • continue终止本次循环的动作,直接进入下一次循环
for i in range(2,15,2):
    if i == 10:
        break
    print(i, end=" ")
#结果:2 4 6 8
for i in range(2,15,2):
    if i == 10:
        continue
    print(i, end=" ")
#结果:2 4 6 8 12 14
2.3 while…else 和 for…else

while…else和for…else中while和else是一块的,for和else也是一块的

当有break或者return的时候就会跳出while,如果没有break或者return,不管while是否执行,都会执行else语句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值