美文网首页
2021-01-05

2021-01-05

作者: 如丝如梦 | 来源:发表于2021-01-05 18:42 被阅读0次

列表

一个列表需要用中括号[ ]把里面的各种数据框起来,里面的每一个数据叫作“元素”。每个元素之间都要用英文逗号隔开。列表很包容,各种类型的数据(整数/浮点数/字符串)无所不能包。

>>> list1=['小明',18,1.70]

>>> print(list1)

要注意一个细节:偏移量取到的是列表中的元素,而切片则是截取了列表的某部分

>>> students = ['小明','小红','小刚']

>>> print(students[2])

小刚

>>> print(students[2:])

['小刚']


给列表增加/删除元素

增加案例:list_students.append('小美')

删除案例:del list_students[1]


append()函数给列表增加元素

>>> list3 = [1,2]

>>> list3.append(3)

>>> print(list3)

[1, 2, 3]

>>> list3.append([4,5])

>>> print(list3)

[1, 2, 3, [4, 5]]

append函数后的参数只要满足数量为一即可(单个列表也会视作一个元素)。

del()函数从列表删除元素:既能删除一个元素,也能一次删除多个元素(原理和切片类似,左取右不取)。

students = ['小明','小红','小刚','小美']

>>> del students[1]

>>> print(students)

['小明', '小刚', '小美']


字典

字典和列表有3个地方是一样的:1.有名称;2.要用=赋值;3.用逗号作为元素间的分隔符。

                   而不一样的有两处:1.列表外层用的是中括号[ ],字典的外层是大括号{ };

students=['小明','小红','小刚']

scores={'小明':95,'小红':90,'小刚':90}

列表中的元素是自成一体的,而字典的元素是由一个个键值对构成的,用英文冒号连接。如'小明':95,其中我们把'小明'叫键(key),95叫值(value)。需要强调的是,字典中的键具备唯一性,而值可重复。也就是说字典里不能同时包含两个'小明'的键,但却可以有两个同为90的值。

>>> scores = {'小明': 95, '小红': 90, '小刚': 90}

>>> print(scores['小明'])

95

以上是从字典中提取对应的值的用法。和列表相似的是要用[ ],不过因为字典没有偏移量,所以在中括号中应该写键的名称,即字典名[字典的键]。


给字典增加/删除元素

增加案例:scores['小美'] =85

删除案例:del scores['小刚']


>>> album = {'周杰伦':'七里香','王力宏':'心中的日月'}

>>> del album['周杰伦']

>>> print(album)

{'王力宏': '心中的日月'}

>>> album['周杰伦'] = '十一月的萧邦'

>>> print (album)

{'王力宏': '心中的日月', '周杰伦': '十一月的萧邦'}

删除字典里键值对的代码是del语句del 字典名[键],而新增键值对要用到赋值语句字典名[键] = 值。


>>> students1 = ['小明','小红','小刚']

>>> students2 = ['小刚','小明','小红']

>>> print(students1 == students2)

False

>>> scores1 = {'小明':95,'小红':90,'小刚':100}

>>> scores2 = {'小刚':100,'小明':95,'小红':90}

>>> print(scores1 == scores2)

列表和字典一个很重要的不同点是列表中的元素是有自己明确的“位置”的,所以即使看似相同的元素,只要在列表所处的位置不同,它们就是两个不同的列表。而字典相比起来就显得随和很多,调动顺序也不影响。因为列表中的数据是有序排列的,而字典中的数据是随机排列的。这也是为什么两者数据读取方法会不同的原因:列表有序,要用偏移量定位;字典无序,便通过唯一的键来取值。


共同点1:在列表和字典中,如果要修改元素,都可用赋值语句来完成。

>>> list1 = ['小明','小红','小刚','小美']

>>> list1[1]='小蓝'

>>> print (list1)

['小明', '小蓝', '小刚', '小美']

>>> dict1 = {'小明':'男'}

>>> dict1['小明'] = '女'

>>> print(dict1)

{'小明': '女'}

共同点2:支持任意嵌套。除之前学过的数据类型外,列表可嵌套其他列表和字典,字典也可嵌套其他字典和列表。

>>> students=[['小明','小红','小刚','小美'],['小强','小兰','小伟','小芳']]

>>> print (students[1][1])

小兰

>>> scores = { '第一组':{'小明':95,'小红':90,'小刚':100,'小美':85},'第二组':{'小强':99,'小兰':89,'小伟':93,'小芳':88}}

>>> print(scores['第二组']['小芳'])

88

>>> students = {'第一组':['小明','小红','小刚','小美'], '第二组':['小强','小兰','小伟','小芳']}

>>> print(students['第一组'][3])

小美

>>> scores = [{'小明':95,'小红':90,'小刚':100,'小美':85}, {'小强':99,'小兰':89,'小伟':93,'小芳':88}]

>>> print(scores[1]['小强'])

99


元组(tuple)。 列表很相似,不过,它是用小括号来包的。

元组和列表都是序列,提取的方式也是偏移量,如 tuple1[1]、tuple1[1:]。另外,元组也支持任意的嵌套。

>>> tuple1 = ('A','B')

>>> print(tuple1[0])

A

>>> list2 = [('A','B'),('C','D'),('E','F')]

>>> print(list2[1][1])

D


>>> townee = [{'海底王国':['小美人鱼''海之王''小美人鱼的祖母''五位姐姐'],'上层世界':['王子','邻国公主']},'丑小鸭','坚定的锡兵','睡美人','青蛙王子',[{'主角':'小红帽','配角1':'外婆','配角2':'猎人'},{'反面角色':'狼'}]]

>>> print(townee[5][1]['反面角色'])

相关文章

网友评论

      本文标题:2021-01-05

      本文链接:https://www.haomeiwen.com/subject/ajpwoktx.html