购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

知识拓展

知识拓展01

例题1 :list=['chaoyang','tongzhou',18,1995],则list[0:-1]的结果为________。

A.[]

B.['chaoyang','tongzhou',18]

C.['chaoyang','tongzhou',18,1995]

D.[1995]

答案 :B

解析

本题重点是-1代表的位置。

取单个数据的情况:

如果要取最后一个元素,可以用-1作索引,直接获取最后一个元素,本题目中list[-1]对应1995。以此类推,获取倒数第二个数据,可以用-2作索引,本题目中list[-2]对应18。

取一个区间的数据的情况:

冒号左边的数字对应的是从左边第几个元素开始取;冒号右边的数字对应的是取到右面第几个元素为止。

这时,索引0对应第一个元素,它的值是chaoyang,而索引-1对应从最后往回数一个元素(不包含最后一个元素),它的值就是18。

list[0:-1]代表的就是从第一个元素开始取到倒数第二个元素为止。

因而结果为B选项。

拓展

列表提取元素,可以顺序提取,也可以倒序提取。

在列表中,list[-1]就是用来获取最后一个元素的。

同理,list[-2]可以获得倒数第二个元素。

如下例中,list[-1]结果为1987;list[-2]结果为xiaoyang。

知识拓展02

例题2 :阅读下面的程序,选择正确的输出结果。________

A.['丁九','常七']

B.['王五','常七','丁九']

C.['王五','常七']

D.[]

答案 :A

解析

根据规则,list[m:n:p]表示要从索引为m的元素开始,以p为步长取数据,取到索引为n的元素为止,但不包括索引为n的元素。

本题目中,name[6:2:-2]表示要从索引为6的元素开始,倒序以-2为步长取数据,取到索引为2的元素为止,但不包括索引为2的元素。

因此,索引为6的“丁九”可以取到,接着是索引为4的“常七”,然后终止获取其余的元素。

故选A。

拓展

切片的用法:数据[起始下标:结束下标:步长],如果步长不写,默认为1。

步长为2时,每隔2个元素才取出一个来。

如果步长为负数,比如-1,则name[::-1]相当于复制一个反转的列表,如下例。

在以上结果中,当索引超出范围时,默认是从最后一个元素开始获取,因而下列两种结果一样,均为['xiaosong','xiaoyang']:

知识拓展03

例题3 :编写Python程序,完成如下操作。

1)将英语成绩为90、数学成绩为89、语文成绩为70传入字典。

2)查看键值对的个数。

3)查看是语文成绩是多少。

4)增加一门课程的成绩,历史成绩为69。

5)查看物理成绩是多少。

6)查看成绩数据字典中的所有键(keys)。

7)查看成绩数据字典中的所有值(values)。

答案

解析

在以上程序中,重点是如何使用字典的几种常用函数,其中包括字典定义函数、查看键值对函数、增加元素函数等。

拓展

根据键来获取值常用的方法为“字典[键]”(dict[key]),但是当访问字典中并不存在的值时,这种方法就会引发KeyError错误,此时可以采用get()函数。

get()函数是根据键来获取值的一种常用方法,如果使用get()函数访问的键存在,便会返回值,如果访问的键不存在,该函数会返回None,不会导致程序运行异常。

keys()函数和values()函数分别用于获取字典中的所有键和所有值。 7JgpuHU0AWlfC6b8IA7hLiYj+dXYMtITT7Y9ZPELP2Lq7MAKmHx3T6vLM2fdRgG7

点击中间区域
呼出菜单
上一章
目录
下一章
×