Python列表与字典的推导式

推导式的示例:
如果:list = [10, 20, 30]
推导式:half = [int(x*0.5) for x in list]
推导式结果half:[5, 10, 15]

选择题
以下python代码的输出结果是什么?
list = [10, 20, 30]
half = [int(x*0.5) for x in list]
dictionary = {i:j for i,j in zip(list,half)}
print(dictionary.get(10))
选项:
A 5
B [10, 20, 30]
C [5, 10, 15]
D {10: 5, 20: 10, 30: 15}

欢迎大家转发,一起传播知识和正能量,帮助到更多人。期待大家提出宝贵改进建议,互相交流,收获更大。辛苦大家转发时注明出处(也是咱们公益编程交流群的入口网址),刘经纬老师共享知识相关文件下载地址为:http://liujingwei.cn

问题解析
这道题主要涉及了列表推导式、字典推导式以及使用字典对象的get()方法获取指定键的值。
1.题目中首先定义了列表list,然后根据list生成新的列表half。进而使用字典推导式结合zip()函数生成了字典,其中键是来自list的元素,而对应的值来自half。需要注意的是,这里可以用列表指定要生成字典的键是因为使用了zip()函数将列表对应位置的元素组合为元组,实现了类型转换,使得元素符合了键不可变的特征。最后用print()语句输出了dictionary对象的get()方法获取key为10对应的值。
2.列表推导式,可以生成指定范围内的数值列表,也可以根据列表生成指定需求的列表。
2.1生成指定范围的数值列表,语法格式如下:
list = [Expression for var in range]
其中:list:表示生成的列表名称;Expression:表达式,用于计算新列表的元素;
var:循环变量;range:采用range()函数生成的range对象。
2.2根据列表生成指定需求的列表,语法格式如下:
newlist = [Expression for var in list]
其中:newlist:表示新生成的列表名称;Expression:表达式,用于计算新列表的元素;var:变量,值为后面列表的每个元素值;list:用于生成新列表的原列表。
3.字典推导式,可以通过表达式生成字典的键和对应的值,也可以根据列表生成字典。其中,通过表达式生成的方法类同列表推导式,本题中使用了根据列表生成字典的方式,根据已有的两个列表,结合zip()函数将两个列表转换为对应的字典。
4.字典对象的get()方法,其语法格式如下:
dictionary.get(key[,default])
其中,dictionary为字典对象,即要从中获取值的字典;key为指定的键;default为可选项,用于当指定的键不存在时,返回一个默认值,如果省略,则返回None。

答案与运行结果
正确答案是:A

图片:

  
温馨期待

期待大家提出宝贵建议,互相交流,收获更大
 

猜你喜欢

转载自blog.csdn.net/liujingwei8610/article/details/121572123