
本文共 2966 字,大约阅读时间需要 9 分钟。
1.基本操作题 (1)
从键盘输入 3 个数作为三角形的边长,在屏幕上显示输出由这 3 个边长构成三角形的面积(保留 2 位小数)。
请参照代码模板,完善代码。输入输出示例
输入 输出
示例 1 3,3,3 3.90
习题讲解a,b,c = eval(input())p = (a+b+c)/2area = pow(p * (p-a)*(p-b)*(p-c),0.5)print("{:.2f}".format(area))
//s=根号下:p(p-a)(p-b)(p-c) 其中p=1/2(a+b+c)
这个公式叫海伦公式 S=√[p(p-a)(p-b)(p-c)] 而公式里的p为半周长:p=(a+b+c)/22.基本操作题(2)
将一个列表中所有的单词首字母转换成大写。
请参照代码模板,完善代码。输入输出示例
输入 输出 示例 1 [“python”,“is”,“opening”] [‘Python’, ‘Is’, ‘Opening’]习题讲解ls = eval(input())for i in range(len(ls)):ls[i] = ls[i].capitalize()print(ls)
3.基本操作题(3)
从键盘输入一个列表,计算输出列表元素的均方差。 //标准差
请参照代码模板,完善代码。本题支持自动评阅。 方差s2=[(x1-x)2+(x2-x)2+…(xn-x)2]/(n)(x为平均数) ⒉标准差=方差的算术平方根errorbarpow() 方法返回 xy(x的y次方) 的值。
输入输出示例
输入 输出
示例 1 [99,98,97,96,95] 均方差为:1.58
习题讲解def mean(numlist): s = 0.0 for num in numlist: s = s + num return s/len(numlist)def dev(numlist,mean): sdev = 0.0 for num in numlist: sdev = sdev + (num - mean)**2 return (sdev /(len(numlist)-1) )** 0.5#请输入一个列表:ls = eval(input(""))print("均方差为:{:.2f}".format(dev(ls,mean(ls))))
4.简单操作题(1)
使用 turtle 库的 turtle.right() 函数和 turtle.circle() 函数绘制一个星星图形,如下图所示。
请参照代码模板,完善代码。自动评阅说明
使用字符串形式输出 ①,②,____③____中应填代码即可以自动评阅得分
例如,如果代码为:代码模板 | # 你的代码
import turtle | import turtle
d = 0 | d = 0for i in range(1): | for i in range(1): turtle.fd(2) | turtle.fd(100) d = 3 | d = (i + 100) * 100 turtle.seth(d) | turtle.seth(d) 则在提交代码页面输入: print(‘1’, ‘100’, ‘(i + 100) * 100’) 提交后即可以查看得分注:如果有运算符,请在运算符两侧加上空格
习题讲解import turtlefor i in range(4): turtle.circle(-90,90)turtle.right(180)print(-90,180)
5.简单操作题(2)
用字典和列表型变量完成某课程的考勤记录统计,某班有 74 名同学,名单由考生目录下文件 txt 给出,某课程 10 次考勤数据由考生目录下文件 1.csv,2.csv … 给出。请输出全勤同学的名字。
请参照代码模板,完善代码。输入输出示例
输入 输出 示例 1 全勤同学有:陈恒杰,张冲,蔡冯顺,…习题讲解# 从csv文件中读取考勤数据ls = []for i in range(1,11): fo = open(str(i) +".csv","r",encoding = "utf-8") for line in fo: line = line.replace("\n","") ls.append(line.split(",")[0]) fo.close()counts = {}for name in ls: counts[name] = counts.get(name,0) + 1items = list(counts.items())print("全勤同学有:",end ="")for i in range(1,74,1): word,count = items[i] if count == 10 : #print("{0:<10}:{1:<5}次".format(word,count)) print(word,end =",")
6.综合应用题
苏格拉底是古希腊著名的思想家、哲学家、教育家、公民陪审员。苏格拉底的名言部分被翻译为中文,部分内容分词结果由考生目录下文件 sgldout.txt 给出。对文件 sgldout.txt 进行分析,输出词频排名前五的词 (不包括中文标点符号) 和次数到 sgldstatistics.txt。
参照输出格式如下: 了:234 了:234 了:234 了:234 了:234 请参照代码模板,完善代码,通过单机测试运行程序。自动评阅说明
不需要打开(open)写入(writeline)文件,使用 print 输出内容即可自动评阅。习题讲解import jiebafo = open("sgldout.txt","r",encoding ="utf-8")words = fo.readlines()fo.close()sym = ";。,“”: "DictWords = {}for ls in words: if ls[:-1] not in sym: DictWords[ls[:-1]] = DictWords.get(ls[:-1], 0) + 1 L = list(DictWords.items()) L.sort(key = lambda s:s[1],reverse=True)# 输出到文件fo = open("sgldstatistics.txt", "w", encoding="utf-8") for i in range(5): fo.writeline(L[i][0] + ":" + str(L[i][1]) + "\n")fo.close()# print 输出for i in range(5): print(L[i][0] + ":" + str(L[i][1]))
转载地址:https://blog.csdn.net/qq_43313588/article/details/88377711 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
关于作者
