iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 7
1
AI & Data

30天 python 學習心得分享系列 第 7

Day7- 容器資料型態List介紹

如果說字串、數值是元素,今天要介紹的內容將是盛放元素的容器~
在程式中我們不免需要獲取許多資料當資料量開始增加時就會開始碰到一個每次開發都碰到的難題想名字
有經驗的工程師們會告訴你變數名稱不能亂取會造成維護上不易,的確當你今天需要存放許多參數時,也不可能會取如a1、a2、a3這樣的名稱,通常會將這樣同性質的資料放入一個碗中,這個碗就是我們今天要介紹的主題嘍.


第一種碗:List

List對於寫asp.net的人應該不陌生,在其他語言中我們其實稱呼為Array也就是陣列的意思在,在python中則稱為List.

基本用法

  • 宣告
    宣告方式如下範例,使用中括號[] 將元素包起來並用,分隔,陣列中能放入我們之前介紹到的所有元素,資料型別為List
a = [2, 3.0, '字串']
print(type(a))
print(a)

#輸出
#<class 'list'>
#[2, 3.0, '字串']
  • 使用
    取用方式為變數後加上[]、起始值為0
print(a[0])
print(a[1])
print(a[2])

#輸出
#2
#3.0
#字串

操作應用

  • 常用的List運算式

    a = [1, 2, 4, 5, 7, 9, 7, 100]    #範例
    #n、n1、n2為數值代號
    
    • a[n1:n2] : 取得索引 n1 至 n2(包括 n1 但不包括 n5)的陣列
    print(a[0:3])     #輸出:[1, 2, 4]
    
    • del a[n1:n2] : 刪除索引 n1 至 n2(包括 n1 但不包括 n5)的陣列
    del a[0:3]
    print(a)    #輸出:[5, 7, 9, 7, 100]
    
    • a[n1:n1] = n : 將索引 n1 至 n2(包括 n1 但不包括 n5)的陣列值修改為n
    a[0:3] = 6, 6, 6 #要變更的元素有幾個要給予相對應數量的值
    print(a)    #輸出:[6, 6, 6, 5, 7, 9, 7, 100]
    
    • a.index(n) : 取得元素等於n的第一個陣列位置
    print(a.index(5))    #輸出:3
    
    • len(a) : 查尋陣列長度
    print(len(a))    #輸出:8
    
    • min(a) : 取得陣列中最小數值(需陣列中皆為int)
    print(min(a))    #輸出:1
    
    • max(a) : 取得陣列中最大數值(需陣列中皆為int)
    print(max(a))    #輸出:100
    
    • a.count(n) : 計算n在陣列中出現的次數
    print(a.count(7))    #輸出:2
    
  • 常用方法

    a = [1, 2, 4, 5, 7, 9, 7, 100]    #範例
    #x 為元素或陣列、n為數值
    
    • a.append(x) : 將值為x的元素或陣列增加至陣列的最後索引位置
    a.append([3, 2, 1])
    print(a)    #輸出:[1, 2, 4, 5, 7, 9, 7, 100, [3, 2, 1]]
    
    • a.extend(x) : 將陣列x中的元素增加至陣列的最後
    a.extend([3, 2, 1])
    print(a)    #輸出:[1, 2, 4, 5, 7, 9, 7, 100, 3, 2, 1]   
    
    • a.insert(n, x) : 從索引位置n插入值為x的元素
    print(a.insert(2, 6))    #輸出:[1, 2, 4, 5, 7, 7, 9, 100]
    
    • a.pop() : 從陣列中彈出最後一個元素
    print(a.pop())    #輸出:100
    print(a)    #輸出:[1, 2, 4, 5, 7, 9, 7]
    
    • a.pop(n) : 從陣列中彈出索引n的元素
    print(a.pop(3))    #輸出:5
    print(a)    #輸出:[1, 2, 4, 7, 9, 7]
    
    • a.remove(x) : 移除陣列中第一次出現值為x的元素
    a.remove(7)
    print(a)    #輸出:[1, 2, 4, 5, 9, 7, 100]
    
    • a.reverse() : 反轉陣列順序
    a.reverse()
    print(a)    #輸出:[100, 7, 9, 7, 5, 4, 2, 1]
    
    • a.sort() : 將陣列中元素重新排序(陣列中需全為數值型態)
    a.sort()
    print(a)    #輸出:[1, 2, 4, 5, 7, 7, 9, 100]
    

以上,為常用對List的操作及取用方式介紹,明天我們再來學習其他盛放的碗型態.
文章內容如果有錯誤歡迎留言告知,可以幫忙糾正錯誤的觀念,感謝!


上一篇
Day6- 數值及字串資料型態介紹
下一篇
Day9- Python 運算式介紹
系列文
30天 python 學習心得分享30

尚未有邦友留言

立即登入留言