Python程序流程控制
if...else
while
for
C或者Java,Switch...case,default,Python中则不存在
举例
a=2
if a<3:
print("a<3")
结果:
a<
3
一.条件分支语句
python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块
1.单分支语句
if 逻辑语句:
语句(块)
举例:
print(111)
if True:
print(222)
print(333)
结果:
111
222
333
print(111)
if False:
print(222)
print(333)
结果:
333
111
2.if双分支语句
if逻辑语句
语句(块)
else:
语句(块)
举例:
learning="java"
if learning=="Python":
print("啊哈,真巧我也在学习python.")
else:
print("小明和你一样,他也在学习java")
print("很高兴认识你")
结果:
小明和你一样,他也在学习java
很高兴认识你
举例:
import getpass 注:getpass只能在脚本运行 getpass不能在pycharm运行
input不能在sublime
username=input("请输入用户名:")
password=input("输入密码:")
if username=="mmt" and password=="668386":
print("登陆成功")
else:
print("请重试")
结果:
请输入用户名:mmt
输入密码:68386
请重试
3.if多分支语句
python中用elseif代替了elseif,所以if语句的关键字为:ifelse——else:
注意:1.每个条件后面使用冒号:表示接下来是满足条件后要执行的语句块
2.使用缩进 语句块.相同缩进数的语句在一起组成一个语句块
3.在python中没有Switch——Case语句
if逻辑语句1:
语句(块)1
else if逻辑语句2:
else if逻辑语句3:
语句(块)3
......
else if逻辑语句n—1:
语句(块)n-1
else:
语句(块)n
举例:
score=int(input("输入分数:"))
if score > 100:
print("我擦,最高分才一百分,附加题也也有分,666...")
elif score>=90:
print("A")
elif score >= 80:
print("B")
elif score >= 60:
print("C")
elif score >= 40:
print("D")
else:
print("太笨了...E")
结果:
输入分数:65
C
while语句
概念:循环用来执行部分代码...即在一定的条件下执行重复代码格式
while 逻辑语句:
语句(块)
举例:
count=0
while count<=100:
print(count)
count += 1
结果: 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63.64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100
举例:
count=1
sum=0
while count<= 100:
if count%2==0:
sum+=count
print((count,sum))
count+=1
print("Total sum:", sum)
结果:
(2, 2),(4, 6),(6, 12),(8, 20),(10, 30),(12, 42),(14, 56),(16, 72),(18, 90),(20, 110),(22, 132),
(24, 156),(26, 182),(28, 210),(30, 240),(32, 272),(34, 306),(36, 342),(38, 380),(40, 420),(42, 462),(44, 506),(46, 552),(48, 600),(50, 650),(52,702),(54, 756),(56, 812),(58, 870)(60, 930),
(62, 992),(64, 1056),(66, 1122),(68, 1190),(70, 1260),(72,1332),(74, 1406),(76, 1482),(78, 1560),(80, 1640),(82, 1722),(84, 1806),(86, 1892),(88,1980),(90,2070),(92,2162),(94,2256),(96,2352),(98,2450),(100,2550)
Total sum: 2550
[^]:
break用于完全结束一个循环,跳出循环体执行循环后面的语句
continue和break有点类似,区别在于continue只是终止本次循环,接着还执行后面循环,break则完全终止循环
举例:
for循环
for循环可以便利任何序列项目,如一个列表或者一个字符串
for循环格式:
for i in 序列
语句(块)
举例:
sum = 0
for i in range(1, 101, 2):
sum += i
print((i, sum))
print("1—100的和",sum)
结果:
(1, 1)
(3, 4)
(5, 9)
(7, 16)
(9, 25)
(11, 36)
(13, 49)
(15, 64)
(17, 81)
(19, 100)
(21, 121)
(23, 144)
(25, 169)
(27, 196)
(29, 225)
(31, 256)
(33, 289)
(35, 324)
(37, 361)
(39, 400)
(41, 441)
(43, 484)
(45, 529)
(47, 576)
(49, 625)
(51, 676)
(53, 729)
(55, 784)
(57, 841)
(59, 900)
(61, 961)
(63, 1024)
(65, 1089)
(67, 1156)
(69, 1225)
(71, 1296)
(73, 1369)
(75, 1444)
(77, 1521)
(79, 1600)
(81, 1681)
(83, 1764)
(85, 1849)
(87, 1936)
(89, 2025)
(91, 2116)
(93, 2209)
(95, 2304)
(97, 2401)
(99, 2500)
1—100的和:2500
举例:for i in range(3):
name = input("name:")
pwd = input("password:")
if name == "hunan" and pwd == "123456":
print("登陆成功.")
else:
print("登录失败")
if i == 2:
print("对不起,您已连续输错3次,请五分钟后重新登录")
结果:name:hunan
password:123456
登陆成功.
name:hyt
password:155
登录失败
name:zx
password:455899
登录失败
对不起,您已连续输错3次,请五分钟后重新登