乐学Python作业题.pdf
- 文档编号:18633160
- 上传时间:2023-08-23
- 格式:PDF
- 页数:10
- 大小:213.37KB
乐学Python作业题.pdf
《乐学Python作业题.pdf》由会员分享,可在线阅读,更多相关《乐学Python作业题.pdf(10页珍藏版)》请在冰点文库上搜索。
乐学Python作业题乐学Python作业题参考录前本主要记录中国MOOC课程乐学Python的作业答案,仅供参考提:
以下是本篇章正内容第1周第1题根据户输的半径计算圆积并输出。
注意:
1.input语句中不要添加任何提字2.计算时使math库的pi值3.结果保留两位数(使round函数)(10分)#引math库#输半径#计算圆积#输出圆积importmathr=eval(input()area=math.pi*(r*2)print(round(area,2)第2周第1题试编写程序,实现以下功能:
编程程序,实现期的格式转换,要求如下:
1、接收由户输的期,格式例如:
1/2/2019(/年)2、从户输的字符串中提取年、3、将年重新组合,以要求的形式进输出,例如:
2019-01-02,其中均占两个字符的宽度,不两位的左边补0。
注意:
输出本中的冒号要为英字符。
可参照以下程序进补全:
date=_#输期,格式如:
1/2/2019(/年)i=_#利index法获取字符串中第个/的正向索引month=_#提取份,例如1/2/2019中的1j=_#利rindex法获取字符串中最后个/的正向索引day=_#提取,例如1/2/2019中的2year=_#提取年份,例如1/2/2019中的2019print(_.format(_)#输出期,格式例如:
2019-01-02(10分)date=input()#输期,格式如:
1/2/2019(/年)i=date.index(/)#利index法获取字符串中第个/的正向索引month=date0:
i#提取份,例如1/2/2019中的1j=date.rindex(/)#利rindex法获取字符串中最后个/的正向索引day=datei+1:
j#提取,例如1/2/2019中的2year=datej+1:
#提取年份,例如1/2/2019中的2019print(-:
02-:
02.format(year,month,day)#输出期,格式例如:
2019-01-02(10分)第3周第1题试编写程序实现以下功能:
1、接收由户输的分数(假设为整数)2、根据以下规则输出相应的内容:
如果分数于等于90且于等于100,输出Excellent如果分数于等于80且于90,输出Good如果分数于等于60且于80,输出Passed如果分数于等于0且于60,输出Failed如果分数于100或者于0,输出Error(20分)n=eval(input()#输分数ifn100orn=90andn=80:
print(Good)elifn=60:
print(Passed)else:
print(Failed)第4周第1题试编写程序,计算给定范围内的所有整数之和。
(注:
给定范围为闭区间)(10分)请选择以下任程序框架进补全(注意缩进对齐):
while结构:
a,b=_#输a和b的值,输时格式例如:
1,10(注意此处逗号为英字符)i=_#设置循环变量的初始值s=_#给存放和的变量设置初始值while_#设置循环条件_#累加求和_#改变循环变量的值_#输出结果for结构:
a,b=_#输a和b的值,输时格式例如:
1,10(注意此处逗号为英字符)s=_#给存放和的变量设置初始值for_#设置循环变量的范围_#累加求和_#输出结果#while结构:
try:
a,b=input().strip().split(,)#输a和b的值,输时格式例如:
1,10(注意此处逗号为英字符)i=eval(a)#设置循环变量的初始值s=0#给存放和的变量设置初始值whileib:
_#交换a和b,使a的值于b的值i=_#设置循环变量的初始值while_#设置循环条件if_#判断当前循环变量的值是否为公约数_#输出当前循环变量的值_#结束当前循环_#改变循环变量的值a=eval(input()#输个正整数b=eval(input()#输另个正整数ifab:
a,b=b,a#交换a和b,使a的值于b的值i=a#设置循环变量的初始值whilein:
#判断当前元素的值是否于待添加的整数lst.insert(i,n)#将待添加的整数添加当前元素之前break#即结束整个循环else:
lst.append(n)print(lst)第3题已知列表lst=(fox,9),(dog,18),(cat,12),存放了各种动物的数量。
试编写程序,由户输个新的动物的名称和数量,将其添加列表中,找出列表中数量最多的动物,将其名称输出。
提:
当使max函数对形如a=(2,4),(3,5),(1,6)这样的嵌套列表进计算时,其较的是列表中每个元素的第个值。
即max(a)的结果为(3,5)(10分)lst=(fox,9),(dog,18),(cat,12)name=input()#输动物名称count=eval(input()#输动物数量lst.append(name,count)#将输的动物名称和数量添加列表中lst1=(cell1,cell0)forcellinlst#利列表成式将列表lst中每个元组中的的名称和数量交换顺序max_animal=max(lst1)1#计算lst1中值最的元素print(max_animal)#输出数量最的动物名称第7周第1题已知字典dic=Tommy:
123,Dora:
456,Joyce:
789,存放了某系统所有合法的户名和密码。
试编写程序,判断户输的户名和密码是否合法,并输出相应的提信息。
(10分)dic=Tommy:
123,Dora:
456,Joyce:
789user=input()#输户名password=input()#输密码ifusernotindic:
#判断户名是否存在print(unknownusername)elifdicuser=password:
#判断密码是否正确print(correct)else:
print(badpassword)第2题试编写程序,完成以下功能:
1、依次录五名同学的姓名及成绩,并将其加字典中,将姓名作为键,成绩作为值。
假设户输的姓名均不重复且成绩为整数。
2、根据户输的学姓名,在字典中查询相应的成绩并输出。
如学不存在,输出error(10分)dic=#创建空字典foriinrange(5):
#设置循环次数name=input()#输姓名score=eval(input()#输成绩dicname=score#将姓名和成绩组成的键值对加字典name_query=input()#输待查询的学姓名ifname_queryindic:
#判断姓名在字典中是否存在print(dicname_query)else:
print(error)第3题试编写程序,完成以下功能:
1、接收户输的个列表2、对列表中相同元素的出现次数进统计,并将统计结果加字典dic中假设输的列表为:
1,2,1,2,3,2,2,4,4,则统计后dic的内容应该形如:
1:
2,2:
4,3:
1,4:
23、根据户输的表达式,在字典dic中查询相应的值并输出。
例如:
户输dic1,输出为2户输dic3,输出为1假设表达式中给定的键在字典中定存在。
(10分)lst=eval(input()#输个列表dic=#创建空字典foriinlst:
#遍历列表元素ifiindic:
#判断该元素是否已在字典中存在相应的键dici=dici+1else:
dici=1query_expression=eval(input()#输表达式print(query_expression)#根据表达式在字典中查询相应的值并输出第8周第1题已知字典dic=apple:
6,orange:
5,banana:
3,pear:
8,watermelon:
10,存放了果的名称和价格。
试编写程序,实现以下功能:
1、接收户输的价格(假设为整数)2、计算于户输价格的所有果的总价(10分)dic=apple:
6,orange:
5,banana:
3,pear:
8,watermelon:
10price=eval(input()#输价格s=0forvalueindic.values():
#遍历字典ifvalueprice:
#判断当前果的价格是否于户输的价格s+=valueprint(s)#输出结果第2题已知字典dic=Tommy:
92,90,100,Joyce:
99,100,Dora:
100,98,95,99,Akili:
100,99,100,98,99,Alisa:
98,98,97,存放了学的姓名及其所有选修课程的成绩。
试编写程序,实现以下功能:
1、接收户输的分数(假设为整数)2、筛选出总分于户输分数的学姓名,个(按照姓名的编码值进升序排列)(10分)dic=Tommy:
92,90,100,Joyce:
99,100,Dora:
100,98,95,99,Akili:
100,99,100,98,99,Alisa:
98,98,97score=eval(input()#输分数lst=#创建空列表forkey,valueindic.items():
#遍历字典ifsum(value)score:
#判断当前学的总分是否于户输的分数lst.append(key)#将符合条件的当前学的姓名添加列表lst中lst.sort()#对列表进排序fornameinlst:
#遍历列表print(name)#输出姓名第3题已知字典dic=801:
1:
Tommy,2:
Thomas,3:
Jack,4:
Ben,303:
1:
Joyce,2:
Dora,3:
Akili,4:
Anni,506:
1:
Alisa,2:
Monica,3:
Joan,4:
Ada,存放了个班所有学的宿舍分配情况,其中宿舍号作为键,其对应的值也是个字典(键为床位号,值为对应的学姓名)。
试编写程序,根据户输的学姓名,查询其宿舍号及床位号,如果学不存在,则返回error。
(10分)dic=801:
1:
Tommy,2:
Thomas,3:
Jack,4:
Ben,303:
1:
Joyce,2:
Dora,3:
Akili,4:
Anni,506:
1:
Alisa,2:
Monica,3:
Joan,4:
Ada#初始化字典元素name=input()#输学姓名fordormitory_number,small_dicindic.items():
#遍历字典forbed_number,student_nameinsmall_dic.items():
#对当前宿舍号对应的字典进遍历ifname=student_name:
#判断姓名是否吻合print(-.format(dormitory_number,bed_number)#输出相应的宿舍号及床位号,格式为:
宿舍号-床位号break#结束当前for循环else:
continue#如果在当前宿舍中未找到该学的信息,则继续查找下个宿舍breakelse:
print(error)第9周第1题试编写程序,完成以下功能:
1、定义个函数:
判断给定的个整数是否是素数,是素数返回True,不是素数返回False2、输出户指定范围内的所有素数。
具体输输出格式见样例。
(10分)defis_prime(n):
#定义函数,判断给定的整数是否为素数foriinrange(2,n):
ifn%i=0:
returnFalsereturnTruem=eval(input()#输范围起始值,为整数n=eval(input()#输范围结束值,为整数foriinrange(m,n+1):
#遍历给定范围内的所有整数ifis_prime(i):
#调函数判断当前整数是否为素数print(i)第2题试编写程序,完成以下功能:
1、定义个函数(函数名为f):
计算给定的两个正整数的最公倍数2、根据户输的函数调表达式直接输出结果,具体输输出格式见样例。
(10分)deff(m,n):
#定义函数,计算给定的两个正整数的最公倍数,并将其返回ifmn:
m,n=n,m#交换m和n的值,使n的值于m的值i=nwhileTrue:
ifi%n=0andi%m=0:
#判断当前i的值是否是m和n的公倍数returni#返回当前i的值i+=1#计算i的下个取值result=eval(input()#输函数调表达式于得到结果print(result)第3题试编写程序,完成以下功能:
1、定义个函数(函数名为f):
计算给定的个三位正整数的各位数字之和及各位数字之积,并将结果返回。
2、根据户输的函数调表达式直接输出结果。
具体输输出格式见样例。
(10分)deff(n):
#定义函数,计算给定三位正整数的各位数字之和及各位数字之积,并将它们返回hundred=n/100#获取百位数字ten=(n-100*hundred)/10#获取位数字gewei=n%10#获取各位数字returnsum(hundred,ten,gewei),hundred*ten*gewei#返回和与积result=eval(input()#输函数调表达式于计算结果print(result)第10周第1题试编写程序,实现以下功能:
1.定义个函数(函数名为f):
根据给定的参数(上底、下底和)计算梯形的积。
将形参上底、下底和的默认值分别设置为1、2、3.2.根据户输的函数调表达式,计算梯形积并输出结果。
输出时保留位数。
具体输输出格式见样例。
(10分)deff(m=1,n=2,k=3):
s=(m+n)*k/2.0#计算梯形积returns#将积返回result=eval(input()print(:
.1f.format(result)#输出结果并控制输出格式第2题试编写程序,实现以下功能:
1.定义个函数(函数名为f):
计算给定的若整数之积。
形参为可变参数2.根据户输的函数调表达式,计算结果并将其输出。
具体输输出格式见样例。
(10分)deff(*args):
#定义个函数,计算可变形参之积s=1foriteminargs:
s*=itemreturnsresult=eval(input()print(result)第3题试编写程序,实现以下功能:
1.定义个函数(函数名为f):
计算给定列表中的所有素数之和。
假设列表中的元素均为正整数。
2.根据户输的函数调表达式,计算结果并将其输出。
具体输输出格式见样例。
(10分)defprime(n):
#定义函数prime,于判断给定的个正整数是否为素数,是则返回True,不是则返回Falseforiinrange(2,n):
ifn%i=0:
returnFalsereturnTruedeff(lst):
#定义个函数,计算给定列表中的所有素数之和s=0foriinlst:
#对列表lst进遍历ifprime(i):
#调prime函数对当前列表元素是否为素数进判断s=s+ireturns#返回和变量result=eval(input()print(result)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python 作业题