PTA Python作业5 组合数据类型

目录

判断题

单选题

编程题

7-1 统计一组成绩中不及格的人数

7-2 统计成绩比例

7-3 词频统计

7-4 求列表中元素的最大值、最小值、总和以及平均值


判断题

1-1Python字典和集合都是无序的容器。(T)

1-2运算符“-”可以用于集合的差集运算。(T)

1-3Python中的列表是不可变的(F)

1-4Python中的元组是不可变的。(T)

1-5一个列表可以是另一个列表的元素。(T)

1-6字典的元素可以通过键来访问,也可以通过位置来访问。(F)

1-7Python字典中的“键”不允许重复。(T)

1-8列表的元素可以是任何类型的对象。(T)

1-9字典直接打印出来的顺序与创建之初的顺序可能不同。(T)

1-10所有的序列都是有顺序的。(T)

单选题

2-1ls = [3.5, "Python", [10, "PYTHON"], 3.6],哪个选项是ls[2][-1][1]的运行结果?

A.Y

B.T

C.P

D.N

2-2以下选项不属于组合数据类型的是:

A.浮点数类型

B.序列类型

C.字典类型

D.集合类型V

2-3如果list1 = [11, 12, 13, 14, 15, 4, 3, 2, 1],那么以下那个是list1[:-1]计算的结果?

A.[0,11, 12, 13, 14, 15, 4, 3, 2,1]

B.[11, 12, 13, 14, 15, 4, 3, 2]

C.[11, 12, 13, 14, 15, 4, 3, 2,1]

D.[0,11, 12, 13, 14, 15, 4, 3, 2,1,0]

2-4要把5加到列表lst的末尾,可以使用____________ 。

A.lst.add(5)

B.lst.append(5)

C.lst.addLast(5)

D.lst.addEnd(5)

2-5下列哪些类型的数据可以作为字典中元素的“键”( )。

A.列表

B.整数

C.集合

D.字典

2-6以下对列表a = ['a', 'b', 'c', 'd', 'e']操作不正确的是:

A.a[len(a)-1]

B.a[-1]

C.a[-5]

D.a[5]

2-7下述代码所实现的功能是:( )

scores = ['小明',99.5, 100, 97.5, 100, 100, 99.5]
sum = sum(scores[1:])
print(sum)

A.输出列表中编号为1的元素

B.输出列表中第一位数字和最后一位数字的和

C.截取列表中元素 [99.5, 100, 97.5, 100, 100, 99.5]并进行累加之后得到总和,最后输出总和

D.从列表中随便输出一位元素

2-8以下不能创建一个字典的语句是:

A.dict1 = {}

B.dict2 = { 3 : 5 }

C.dict3 = {[1,2,3]: “uestc”}

D.dict4 = {(1,2,3): “uestc”}

2-9关于组合数据类型的描述,正确的选项是:

A.Python中最常用的映射类型的典型代表是字典类型

B.列表类型里的元素要求是同一种数据类型

C.元组采用大括号{ }方式表示

D.序列类型的元素可以用reverse()方法交换相邻元素的位置

2-10Python中,以下关于集合的描述错误的是:

A.无法删除集合中指定位置的元素,只能删除特定值的元素。

B.Python集合中的元素不允许重复。

C.Python集合是无序的。

D.Python集合可以包含相同的元素。

编程题

7-1 统计一组成绩中不及格的人数

作者 python备课组

单位 福州大学至诚学院

输入n个学生的成绩(n也由键盘输入),统计平均分及成绩不及格的人数。

输入格式:

1.第一行输入一个正整数,表示指定输入的人数n。
2.从第二行开始每行输入一个数,共n行,表示n个成绩。

输出格式:

有……个学生不及格。

输入样例:

5
50
70
60
80
30

输出样例:

平均分为:58.00,有2个学生不及格。
adv = 0
a = 0
x=eval(input())
for i in range(0,x):
    score = eval(input())
    adv+=score
    if score<60:
        a+=1
print("平均分为:{:.2f},有{}个学生不及格。".format(adv/x,a))

7-2 统计成绩比例

作者 python备课组

单位 福州大学至诚学院

编写程序实现:输入一个小组若干个学生成绩,统计这个小组成绩的优秀率(以85分及以上成绩为优秀)。

输入格式及样例:

在同一行输入若干个学生成绩,以逗号间隔。

50,80,60,78,95,86,85,74,67,75

输出格式及样例:

输出“优秀率为......%。”字样。提示:格式符 %% 可以输出一个%号

优秀率为30.00%。
s=tuple(map(int,input().split(',')))
a = 0
b = 0
for i in s:
    if i>=85:
        a+=1
    b+=1
print("优秀率为{:.2f}%。".format(a/b*100))

7-3 词频统计

作者 python备课组

单位 福州大学至诚学院

输入一个字符串,字符串包含多个单词,单词间用一个空格分隔,字符串里没有任何标点符号。要求将该字符串中单词和单词出现的次数保存到字典中,并输出字典。

输入格式:

一个包含多个单词的字符串,单词间用一个空格分隔,字符串里没有任何标点符号。

输出格式:

输出一个字典。

输入样例:

在这里给出一组输入。例如:

life is short we need python we need python

输出样例:

在这里给出相应的输出。例如:

{'life': 1, 'is': 1, 'short': 1, 'we': 2, 'need': 2, 'python': 2}

 

a = {}
s = tuple(input().split())
for i in s:
    if i in a:
        a[i]+=1
    else:
        a[i]=1
print(a)

7-4 求列表中元素的最大值、最小值、总和以及平均值

作者 python备课组

单位 福州大学至诚学院

输入一组数将其存于某列表中,求列表中元素的最大值、最小值、总和以及平均值。

提示:将形如"[1,3,5]"的字符串转换成列表可以使用eval()函数。

输入格式:

[元素1, 元素2, ... , 元素n]。

输出格式:

输出格式详见样例,平均值保留两位小数。

输入样例:

[1,4,7,8,5,2,3,6,9]

输出样例:

元素个数:9
最大值:9
最小值:1
元素和:45
平均值:5.00
s=eval(input())
a=len(s)
print(f"元素个数:{a}")
b=max(s)
print(f"最大值:{b}")
c=min(s)
print(f"最小值:{c}")
d=sum(s)
print(f"元素和:{d}")
e=d/a
print(f"平均值:{e:.2f}")
  • 8
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值