编程语言
首页 > 编程语言> > Python 基础总篇(下)选择结构开始!

Python 基础总篇(下)选择结构开始!

作者:互联网

目录

5. 选择结构

5.1 if判断语句:

语法:if not(取反)判断条件:
输出内容
elif 判断条件:
输出内容
else
输出内容

5.1.2 案例

5.1.2.1 计算三角形案例

计算三角形

##计算三角形面积

# 已知三边海伦公式得出三角形面积 改进三角形,三边不成立就停止输出
##需要平方根所以引入数学公式
import math

# 输入三边
a = float(input('请输入a:'))

b = float(input('请输入b:'))

c = float(input('请输入c:'))

# 先求p,p = (a+b+c) / 2
res =  a + b < c and a + c < b and b + c < a
if res :
    print('请输检查三边输入是否正确')
    exit(1)# 1 是错误退出

p = (a + b + c) / 2

# 求s面积

s = math.sqrt(p * (p - a) * (p - b) * (p - c))

##输入面积

print("面积为:%.2f" % s)

5.1.2.2 打车费用计算

# 打车费用计算,输入公里数得到费用
# 1.小于2km 起步 8元
# 2.2 - 10 公里超过起步价每公里2.8
# 3. > 10 公里,每公里 3.5
# 输入公里数
gl = float(input('请输入公里:'))
# 判断输入公里数是否正确(最后)
# 判断以上条件
# 小于2公里的
if gl<2 and gl >=0:
    gl = 8
    print("%.2f 元" %gl)
elif gl >=2 and gl <= 10:
    gl = gl - 2
    gl = gl * 2.8 +8
    print("%.2f 元" %gl)
elif gl > 10:
    gl = (2.8*8+8) + (gl - 10) * 3.5
    print("%.2f 元" % gl)
else:
    print('请输入正确的公里数')

5.1.2.3 经典案例:计算水仙花

# 判断是否水仙花
# 输入三位数
sxh = int(input('请输入三位数:'))
# 判断输入的是否是三位数
if sxh < 100 or sxh >999:
    print('输入内容错误')
    exit('输三位数字!!!')
    # 输入正确的内容
else:
    #转成字符串提取内容
    sxh_str = str(sxh)
    a = int (sxh_str[0])
    b = int (sxh_str[1])
    c = int (sxh_str[2])
# 判断是否为水仙花
if a**3 + b**3 + c**3 != sxh:
    print('不是水仙花数')
else:
    print('是水仙花数')

5.1.3 if循环嵌套

5.1.3.1 献血案例

# 输入性别和体重判断输血量
sex = input('请输入性别:')
weigth = int(input('请输入体重'))
cc = 0
if sex = '1': # 1代表男
	if weigth >= 65:
		cc = 400
	else:
		cc = 300
else:  # 反之就是女的
	if weigth > 45
		cc = 300
	else:
		cc = 200
print ('献血量:%d CC' %cc)

6. 循环结构

6.1 循环的套路

1.考虑好循环的初始条件
2.考虑好结束条件
3.重复需要干嘛
4.如何进入下次循环

6.1.1 循环与不循环的比较

原始方式想要算平均分:

# 原始方式
a = int(input('请输入第1个成绩'))
b = int(input('请输入第2个成绩'))
c = int(input('请输入第3个成绩'))
d = int(input('请输入第4个成绩'))
e = int(input('请输入第5个成绩'))
sum = a+b+c+d+e
avg = sum / 5
print('平均分: %.2f' %avg )

用循环后:

i = 1
sum = 0
while i <= 5 :
    a = input('请输入第%d个成绩:'%i)
    sum += int(a)
    i+=1

avg = sum / 5
print(avg)

6.2 while 语法

循环的内容
注意:
如果循环的条件成立,运行“循环内容”
如果不成立,跳过循环

6.2.1 案例所有水仙花(100-999):

# 找出三位数的所有水仙花数

# 首先要限定范围
n = 100
while (n<=999):
    # 拿出个位十位百位相加
    sxh_str = str(n)
    a = int (sxh_str[0])
    b = int (sxh_str[1])
    c = int (sxh_str[2])
    sum = a**3 + b**3 + c**3
    #符合条件干什么
    if sum == n :
      print('%d是水仙花数' %n)
# 下次进入循环n的值
    n += 1

6.2.2 其他案例

https://blog.csdn.net/C2_tr_Grow_up/article/details/116165743

6.3 for循环

6.3.1 基础for循环

# for循环

str = 'Hello World'
for a in str:
    print(a)



for c in range(1,100):
    print(c)

6.3.2 其他for循环案例

https://blog.csdn.net/C2_tr_Grow_up/article/details/116203513

后记

其他后续内容请查看我发的其他博客,我会一直持续更新。

列表地址

https://blog.csdn.net/C2_tr_Grow_up/article/details/116403483

元组 字典 地址

https://blog.csdn.net/C2_tr_Grow_up/article/details/116429147

标签:5.1,Python,选择,int,循环,总篇,print,input,输入
来源: https://blog.csdn.net/C2_tr_Grow_up/article/details/116566683