[day-16] 认识Python的资料结构!(Part .3)

用List实现多层容器

  何谓 多层容器 ?我们前面说过List可以存放 『任意型别』 ,其中也包含了容器型别,也就是说你可以在List的元素中定义 "子串列" ,子串列的特性与正常串列没有任何区别,因此你可以 一直分割下去

Example :多层容器


#建立一个List含有3个水果的资讯
fruit=[['柳橙', '10', 'True'], ['柚子', '30', 'True'], ['番茄', '15', 'True']] 
print(fruit[0] [0]) #读取fruit这个串列中的第0个元素,里面的第0个元素
print(fruit[1] [0]) #读取fruit这个串列中的第1个元素,里面的第0个元素
print(fruit[2] [0])

输出:

 柳橙
 柚子
 番茄

概念图:

概念图

※ 小盒子的部分为串列,圆圈代表元素


当你不需要某个元素时该怎麽做呢?

  当你不需要某个元素时,你可以使用 『del』 来删除串列中的元素

del fruit[0] #这样就删除了fruit这个串列中的第0个元素

#如果你整个串列都不要了,你可以选择删除整个变数名称
del fruit #删除fruit这个变数


跟List很像的tuple到底是甚麽?

  tuple跟List的使用方式几乎一模一样,它的特性是其中的元素是 不可更改(immutable) 的,主要用作程序中存放重要的"常数"或是不希望被更改的内容,由於它不可更改的特性使的它的资料结构较为简单,而执行速度也比较快速。

⚠ tuple在容器的使用方式是使用小括号,而非大括号,这点要特别注意!!
⚠ 但是在使用索引调用元素时,仍然是使用大括号。

 我们刚有说到 『tuple跟List的使用方式几乎一模一样』 所以它一样也能在元素中定义子串列,由於tuple的管辖范围仅在第一层的元素,因此当你加入一个可变的容器当作元素,那这种情况就可以更动子容器中的内容。

Example : tuple的使用方法

fruit=('苹果', '柚子', '番茄')
print(fruit[0], fruit[2])

fruit2 = tuple(fruit) #建立一个变数名为fruit2的tuple,并使用fruit这个List当作范本来建立
print(fruit2[0], fruit2[2])

输出:

苹果 番茄
苹果 番茄


<<:  [Day 16]新试剂服英战士(前端篇)

>>:  [Day 26] Leetcode 283. Move Zeroes (C++)

[Day 24] -『 GO语言学习笔记』- 复合型别 - 阵列(Array) (II)

以下笔记摘录自『 The Go Workshop 』。今天要继续讲一下阵列(Array)这个型别。 ...

Day7 工业厂区的现场设备 IED、HMI

Intelligent Electronic Device,IED 智慧电子设备 感测器、变压器、...

语音服务-语音转换文字范例(from-file code)

延续昨天,今天就来看看范例中是怎麽呼叫API及使用SDK吧!(打开index.html及token....

JavaScript基本功修练:Day27 - AJAX基本概念

对於新手来说,AJAX课题里比较难懂的部分应该是背後的运作概念,而非程序码本身。这个课题会分开几篇,...

轻松小单元 - 最新修正内容(2021)

资安法与时俱进,但也很少会突然多了新应办事项。在草案期间就会公布新内容并举办巡回说明。实际施行也会给...