Python习题第六章
包含【人名最多数统计编程思路】
1.关于大括号{},以下描述正确的是:
A直接使用{}将生成一个列表类型
B直接使用{}将生成一个元组类型
C直接使用{}将生成一个集合类型
D直接使用{}将生成一个字典类型
正确答案 D
考点:集合类型和字典类型最外侧都用{}表示,不同在于,集合类型元素是普通元素,字典类型元素是键值对。字典在程序设计中非常常用,因此,直接采用{}默认生成一个空字典。
2.列表ls,哪个选项对ls.append(x)的描述是正确的?
A向列表ls最前面增加一个元素x
B替换列表ls最后一个元素为x
C只能向列表ls最后增加一个元素x
D向ls中增加元素,如果x是一个列表,则可以同时增加多个元素
正确答案 C
考点:ls.append(x),如果x是一个列表,则该列表作为一个元素增加的ls中。
3.以下不是Python序列类型的是:
A字符串类型
B列表类型
C元组类型
D数组类型
正确答案 D
考点:Python内置数据类型中没有数组类型。
4.给定字典d,哪个选项对x in d的描述是正确的?
A x是一个二元元组,判断x是否是字典d中的键值对
B判断x是否是字典d中的值
C判断x是否是在字典d中以键或值方式存在
D判断x是否是字典d中的键
正确答案 D
考点:键是值的序号,也是字典中值的索引方式。因此,x in d 中的x被当作d中的序号进行判断。
5.序列s,哪个选项对s.index(x)的描述是正确的?
A返回序列s中元素x所有出现位置的序号
B返回序列s中序号为x的元素
C返回序列s中元素x第一次出现的序号
D返回序列s中x的长度
正确答案 C
考点:s.index(x)返回第一次出现x的序号,并不返回全部序号。
5.哪个选项是下面代码的输出结果?
d= {'a': 1 'b': 2 'b': '3'}
print(d['b'])
A 1
B 2
python获取数组长度C {'b':2}
D 3
正确答案 D
考点:创建字典时,如果相同键对应不同值,字典采用最后(最新)一个"键值对"。
7.关于Python组合数据类型,以下描述错误的是:组合数据类型可以分为3类: A序列类型、集合类型和映射类型
B序列类型是二维元素向量,元素之间存在先后关系,通过序号访问
C组合数据类型能够将多个相同类型或不同类型的数据组织起来,通过单一的表示使数据操作更有序、更容易
D Python的字符串、元组和列表类型都属于序列类型
正确答案 B
考点:序列类型总体上可以看成一维向量,如果其元素都是序列,则可被当作二维向量。
8.给定字典d,哪个选项对d.values()的描述是正确的?
A返回一个列表类型,包括字典d中所有值
B返回一个元组类型,包括字典d中所有值
C返回一个集合类型,包括字典d中所有值
D返回一种dict_values类型,包括字典d中所有值
正确答案 D
考点:d.values()返回的是dict_values类型,这个类型通常与for..in组合使用。
9.S和T是两个集合,哪个选项对S^T的描述是正确的?
A S和T的交运算,包括同时在集合S和T中的元素
B S和T的补运算,包括集合S和T中的非相同元素
C S和T的差运算,包括在集合S但不在T中的元素
D S和T的并运算,包括在集合S和T中的所有元素
正确答案 B
考点:集合"交并差补"四种运算分别对应的运算符是:& | - ^
10.关于Python的元组类型,以下选项错误的是:
A 元组中元素必须是相同类型
B 一个元组可以作为另一个元组的元素,可以采用多级索引获取信息
C元组采用逗号和圆括号(可选)来表示
D元组一旦创建就不能被修改
正确答案 A
考点:序列类型(元组、列表)中元素都可以是不同类型。例如(3,”abc”)包含了整数与字符串。
编程题目
1.数字不同数之和
描述
获得用户输入的一个整数N,输出N中所出现不同数字的和。
例如:用户输入 123123123,其中所出现的不同数字为:1、2、3,这几个数字和为6。
程序编写:
n = input()
s = set()
for i in n:
s.add(i)
num = 0
for j in s:
num += eval(j)
print(num)
考点:本题主要是用于对集合应用的一个操作,集合会自动去掉重复的单元
注意要学会处理集合中的元素形式,将s中的元素用eval函数变成可以执行的数值类型很重要。
编程题目2:
描述
编程模板中给出了一个字符串,其中包含了含有重复的人名,请直接输出出现最多的人名。
程序编写:
ls=s.split(" ") #重要,将字符串中的字符用空格分隔,其实也可以用逗号
counts={}
for word in ls:
if word==''or word=="\n": #如果存在特殊字符,计数为0
counts[word] = (word0)
else:
counts[word] = (word0) + 1
items = list(counts.items())
items.sort(key = lambda x:x[1]reverse = True)
wordcount = items[0]
print(word)
考点:如果采用jieba库函数,因为涉及到网络的原因,处理时间太长从而导致错误,因此该题目不建议使用jieba库,从而改用对字符串进行操作。
常见字符串中的操作包括str.strip()以及place(oldnew)函数操作,不过不适合该题目使用。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论