欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

第三章作业

时间:2023-08-20

1、画出代码a = [100,200,300]的内存存储示意图。

2.使用range 生成序列:30,40,50,60,70,80

a = list(range(30,90,10))
print(a)

3、推导式生成列表: a = [x*2 for x in range(100) if x%9==0],手写出结果。

a=[0,18,36,54,72,90, 108, 126,144,162,180,198]

4、使用二维列表存储表格信息,并画出简单的内存存储示意图:

5、元组和列表有哪些共同点?有哪些不同点?

1)元组和列表的共同点:都是序列,都可进行切片,迭代
2)元组和列表的不同点:元组是不可变序列。元组的访问和处理速度比列表快。元组可以作为字典的键,列表则永远不能作为字典的键使用。
6、创建一个字典对象,包含如下信息:
支出金额:300.15,支出日期:2018.10.18,支出人:高小七

a={"支出金额.:"300.15","支出日期":"2018.10.18","支出人":"高小七"}
7、使用字典存储行数据,最后将整个表使用列表存储起来。

r1 = {"name":"高小一","age":18,"salary":30000,"city":"北京"}
r2 = {"name":"高小二","age":19,"salary":20000,"city":"上海"}
r3 = {"name":"高小五","age":20,"salary":10000,"city":"深圳"}
tb = [r1,r2,r3]

8、用文字和自己画的示意图描述:字典存储一个键值对的底层过程。

a={}
a["name"]="huang
print(bin(hash("name")))
>>
-0b101011100101111010111001110100011011001001001001011100001
>>>

1)当将"name"=“huang"这个键值对放到字典对象a中,首先第一步要计算键"name"的散列表.Python可以使用hash()来计算。
2)由于数组长度为8,我们可以拿计算出的散列值,最右边3位数作为偏移量,即"001”,十进制是数字1,我们查看偏移量1,对应的bucket是否为空,如果为空,则将键值放进去,如果不为空,依次取右边3位作为偏移量’100’,十进制是数字4,再查看偏移量4的bucket是否为空.直到栈为空的bucket将键值放进去


9、集合和字典有什么关系?

 实际上,集合底层是字典实现,集合的所有元素都是字典中的"键对象",因此是不能重复的且唯一的。

 

 

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。