购买网站空间后怎么做,门户网上登录入口,wordpress主题logo,百度地图手机网页版Python的控制流语句使用 判断语句 if分支示意图语法介绍注意事项示例 for循环示意图语法介绍列表推导式示例 while循环与for的区别语法介绍示例 判断语句 if分支
示意图
单、双、多分支#xff1a;
语法介绍
# 单分支
if condition:expression
# 双分支
if condition:exp… Python的控制流语句使用 判断语句 if分支示意图语法介绍注意事项示例 for循环示意图语法介绍列表推导式示例 while循环与for的区别语法介绍示例 判断语句 if分支
示意图
单、双、多分支
语法介绍
# 单分支
if condition:expression
# 双分支
if condition:expression1
else:expression2
# 多分支
if condition1:expression1
elif condition2:expression2
else:expression3注意事项
关键词if、elif和else所在的行末必须加上英文状态的冒号。 冒号所在行的下一行必须缩进目的是为了代码的好看与好用。 elif的正确写法 错误写法elseif else if 。 else后面永远不要写条件。
示例
1.二分支返回一个数的绝对值
# 二分支返回一个数的绝对值
x -3
if x 0:print(x)
else:print(-1*x)输出 3 2.多分支返回成绩对应的等级
# 多分支返回成绩对应的等级
score 68
if score 60:print(不及格)
elif score 70:print(合格)
elif score 80:print(良好)
else:print(优秀)输出 合格 3.使用input函数输入一个整数并判断该整数是否与7相关可被7整除或含7字样的整数。
# 使用input函数输入一个整数并判断该整数是否与7相关可被7整除或含7字样的整数
number input(请输入一个整数)
if (int(number) % 7 0) | (number.find(7) ! -1):print(与7相关)
else:print(与7不相关)输出 请输入一个整数28 与7相关 请输入一个整数8 与7不相关 4.使用input函数输入一个身份证号码并提取出出生日期。
# 使用input函数输入一个身份证号码并提取出出生日期
ID input(请输入身份证号码)
if len(ID) 18:birthday ID[6:14]print(birthday)
elif len(ID) 15:birthday 19ID[6:12]print(birthday)
else:print(请重新输入身份证号码)输出 请输入身份证号码123456789987654321 78998765 5.使用input函数输入一个身份证号码并识别性别 18位身份证号性别是倒数第二位 15位身份证号码性别是倒数第一位 偶数为女奇数为男
# 使用input函数输入一个身份证号码并识别性别
ID input(请输入身份证号码)
if len(ID) 18:if int(ID[-2]) % 2 0:print(女)else:print(男)
elif len(ID) 15:if int(ID[-1]) % 2 0:print(女)else:print(男)
else:print(请重新输入身份证号码)输出 请输入身份证号码123456789987654321 女 请输入身份证号码123456789012345 男 for循环
示意图
对于for循环来说就是把可迭代对象中的元素如列表中的每一个元素通过漏斗的小口依次倒入之后的执行语句中。
语法介绍
for i in iterable:if condition:expressionelif condition:expressionelse:expression列表推导式
语法介绍 [expression for i in iterable if condition] 注意: • expression就是对每一个元素的具体操作表达式 • iterable是某个可迭代对象如列表、元组或字符串等 • if condition是对每一个元素做分支判断如果条件符合则expression操作对应的元素
示例
1.将列表中的每个元素做平方加1处理
# 将列表中的每个元素做平方加1处理
list6 [1,5,2,8,10,13,17,4,6]
result []
for i in list6:y i ** 2 1result.append(y)
print(result)输出 [2, 26, 5, 65, 101, 170, 290, 17, 37] 2.计算1到100之间的偶数和
# 计算1到100之间的偶数和
s1_100 0
for i in range(1,101):if i % 2 0:s1_100 s1_100 ielse:pass
print(1到100之间的偶数和为%d%s1_100)输出 1到100之间的偶数和为2550 3.对列表中的偶数做三次方减10的处理
# 对列表中的偶数做三次方减9的处理
list7 [3,1,18,13,22,17,23,14,19,28,16]
result [i ** 3 - 9 for i in list7 if i % 2 0]
print(result)输出 [5823, 10639, 2735, 21943, 4087] 4.区别列表中所有含”e”字母的单词列表如下 [‘one’,‘two’,‘three’,‘four’,‘five’,‘six’,‘seven’,‘eight’,‘nine’]
list [one,two,three,four,five,six,seven,eight,nine]
res []
for i in list:if i.find(e) ! -1:res.append(i)
print(res)输出 [‘one’, ‘three’, ‘five’, ‘seven’, ‘eight’, ‘nine’] 5.将列表的中的元素做平方减5的操作列表如下 [10,23,16,11,14,18,21,25,17,22,19]
list [10,23,16,11,14,18,21,25,17,22,19]
res []
for i in list:res.append(i**2-5)
print(res)输出 [95, 524, 251, 116, 191, 319, 436, 620, 284, 479, 356] 6.统计列表中各元素的频次并以字典形式存储统计结果列表如下 [‘A’,‘C’,‘A’,‘C’,‘B’,‘C’,‘A’,‘A’,‘B’,‘C’]
list [A,C,A,C,B,C,A,A,B,C]
res {}
for i in list:res[i] list.count(i) # count()为统计数目函数
print(res)输出 {‘A’: 4, ‘C’: 4, ‘B’: 2} 优化减少循环次数
list [A,C,A,C,B,C,A,A,B,C]
res {}
for i in set(list): # set()为几何函数可以进行排重从而减少循环数目res[i] list.count(i) # count()为统计数目函数
print(res)while循环
与for的区别
绝大多数场景下while循环与for循环是可以互相替代的。 如果存在明确的被迭代对象如列表、元组、字符串等可优先使用for循环。 如果不存在明确的被迭代对象使用while循环将会更加地简单。
语法介绍
while condition:if condition1:expression1elif condition2:expression2else:expression3示例
首先进行一个示例对比 对于for循环
# 使用for循环登录某手机银行APP – 已知登录总次数的情况
for i in range(1,6):user input(请输入用户名)password int(input(请输入密码))if (user test) (password 123):print(登录成功)breakelse:if i 5:print(错误您今日还剩%d次输入机会。 %(5-i))else:print(请24小时后再尝试登录)输出 请输入用户名123 请输入密码123 错误您今日还剩4次输入机会。 请输入用户名145 请输入密码123 错误您今日还剩3次输入机会。 请输入用户名test 请输入密码123 登录成功 对于while循环
# 使用while循环登录某邮箱账号 -- 无限次登录次数的情况
while True:user input(请输入用户名)password int(input(请输入密码))if (user test) (password 123):print(登录成功)breakelse:print(您输入的用户名或密码错误)输出 请输入用户名123 请输入密码123 您输入的用户名或密码错误 请输入用户名145 请输入密码123 您输入的用户名或密码错误 请输入用户名test 请输入密码123 登录成功 1.计算等差数列3n5的前多少项和不超过1000
s 0
n 0
while s 1000:n 1s 3*n5print(n,---,s)
print(n-1)输出 1 — 8 2 — 19 3 — 33 4 — 50 5 — 70 6 — 93 7 — 119 8 — 148 9 — 180 10 — 215 11 — 253 12 — 294 13 — 338 14 — 385 15 — 435 16 — 488 17 — 544 18 — 603 19 — 665 20 — 730 21 — 798 22 — 869 23 — 943 24 — 1020 23 2.猜数字游戏给定整数范围直到猜中为止
import random # 生成随机函数
number random.randint(10,30) #生成10-30的随机整数
while True:guess input(请输入一个10-30的整数)if number int(guess):print(恭喜你猜中了)breakelif int(guess) number:print(偏小)else:print(偏大)输出 请输入一个10-30的整数25 偏大 请输入一个10-30的整数20 偏大 请输入一个10-30的整数15 偏大 请输入一个10-30的整数10 恭喜你猜中了 优化自己设置上下限制可以看见变化的上下限
import random # 生成随机函数
min int(input(范围最小值))
max int(input(范围最大值))
number random.randint(min,max) #生成10-30的随机整数
while True:guess input(请在{}~{}之间猜一个整数.format(min,max))if number int(guess):print(恭喜你猜中了)breakelif int(guess) number:print(偏小)min guesselse:print(偏大)max guess输出 范围最小值20 范围最大值60 请在20~60之间猜一个整数30 偏小 请在30~60之间猜一个整数50 偏小 请在50~60之间猜一个整数59 偏大 请在50~59之间猜一个整数56 偏大 请在50~56之间猜一个整数55 偏大 请在50~55之间猜一个整数54 偏大 请在50~54之间猜一个整数52 恭喜你猜中了