Python初学笔记3

1、单分支if语句
某停车场的收费标准如下图所示,编写程序,通过input()函数获取用户输入的停车时长(小时),使用单分支if语句计算小型汽车在白天(8:00-23:00)的停车费用(元)。

Python初学笔记3import math timex=float(input("停车时间(以小时为单位):")) if timex<=2: money=0 else: money=2*math.ceil(timex) print("停车费用:",money,"元")

2、双分支if语句
某停车场的收费标准如下图所示,编写程序,通过input()函数获取用户输入的停车时长(分钟),使用双分支if语句计算白天(8:00-22:00)的停车费用(元)。

Python初学笔记3import math timex=int(input("停车时间(以分钟为单位):")) if timex<=30: money=0 elif 30<timex<=90: money=5 else: money=2*math.ceil(timex/60) print("停车费用:",money,"元")

3、多分支if语句
某停车场的收费标准如下图所示,编写程序,通过input()函数获取用户输入的停车时长(小时),使用多分支if语句计算小型车辆的停车费用(元)。

Python初学笔记3import math timex=float(input("停车时间(以小时为单位):")) if timex<=1: money=0 elif 1<timex<=12: money=2 elif 12<timex<=16: money=2*math.ceil(timex-12)+2 elif 16<timex<24: money=10 else: money=10*math.ceil(timex/60)+10 print("停车费用:",money,"元")

4、while循环
编写程序,使用while循环输出1~100之间能被7整除但不能同时被5整除的所有整数。

i=0
while i<101:
    i=i+1
    if i%7==0 and i%5!=0:
        print(i,end=",");

5、for循环
如果将20元兑换成1元、5元、10元面值的零钱,共有多少种兑换方法?使用for循环探索该问题的答案。

for x in range(0,21):
    for y in range(0,5):
        for z in range(0,3):
         if x+5*y+10*z==20:
            print("可以换成一元{}张,五元{}张,十元{}张".format(x,y,z))

6、函数的定义及使用
编写一个函数,接收一个字符串参数,返回一个元组,该元组的第一个元素为字符串中英文字母的个数,第二个元素为数字(0-9)的个数。

import string
def fuc(x):
    result=[0,0]
    for i in x:
        if i in string.ascii_letters:
            result[0]+=1
        elif i in string.digits:
            result[1]+=1
    return tuple(result)
x=input("请您输入一个字符串,将为您返回其中的英文字母,数字的个数:")
y=fuc(x)
print(y)

7、lambda表达式
下列程序从列表listx中筛选出大于或等于80的元素。请使用lambda表达式改写该程序,以更简短的代码实现同样的功能。提示:用lambda表达式代替myfilter()函数。

listx=[82,67,75,84,73,88,97,86]
print(listx)
def myfilter(x):
return x>=80
listy=list(filter(myfilter,listx))
print(listy)

lst=[82,67,75,84,73,88,97,86]
lsty=list(filter(lambda x:x>=80,lst))
print(lsty)

8、程序流程控制综合题
编写一个函数(函数1),接收用户输入的体重(千克)和身高(米),返回BMI指数(BMI指数的计算方法见实验1)。编写另一个函数(函数2),接收BMI指数,根据下图的标准返回用户的体形分类。程序运行时,首先获取用户输入的体重和身高,其次调用函数1计算BMI指数,然后调用函数2计算用户的体形分类。得到体形分类的结果后,询问用户是否继续输入体重和身高,回答“yes”就继续输入,回答“no”就停止输入。

Python初学笔记3

def project(x,y):
    BMI=x/y**2
    return BMI
def classify(x,y):
    BMI=project(x,y)
    if BMI<=18.4:
        print("偏瘦")
    elif 18.5<BMI<23.9:
        print("正常")
    elif 24.0<BMI<27.9:
        print("过重")
    else:
        print("肥胖")

while True:
    print("请输入体重:")
    x=float(input())
    print("请输入身高:")
    y=float(input())
    z=project(x,y)
    print("您的BMI指数是:",z)
    classify(x,y)
    i = input("是否继续输入?y or n:")
    if i=="n":
        break

`

上一篇:0204原来“瘦胖子”比“真胖子”更危险


下一篇:如何理解VB窗体中的scale类属性及width height属性之间的关系