iT邦幫忙

2021 iThome 鐵人賽

DAY 16
0
自我挑戰組

30天 從0開始的 Python 全方面應用系列 第 16

[day-16] 認識Python的資料結構!(Part .3)

  • 分享至 

  • xImage
  •  

用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-15] 認識Python的資料結構!(Part .2)
下一篇
[day-17] 認識Python的資料結構!(Part .4)
系列文
30天 從0開始的 Python 全方面應用28
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言