2018年2月5日 星期一

[Python] 第三篇--串列(list)

[Python] 第三篇--串列(list)

1. 串列長度,len()

list1 = [0,1,2,3,4,5,6]
l = len(list1)
print("list1的串列長度:",l)

輸出:
list1的串列長度: 7

2. 搜尋指定串列元素的索引值,index()

list1 = [1,2,3,4,5,6]
n = list1.index(4)
print("list1的串列中4的索引值:",n)

輸出:
list1的串列中4的索引值: 3

3. 指定串列元素出現的次數,count()

list1 = [0,2,5,4,7,8,4,4,4,2,2,0,1]
m = list1.count(2)
print("list1的串列中2的數量:",m)

輸出:
list1的串列中2的數量: 3

4. 將元素加到串列最後面,append()

list1 = [1,2,3,4,5]
print("增加前:",list(list1))
list1.append(100)
print("增加後:",list(list1))

輸出:
增加前: [1, 2, 3, 4, 5]
增加後: [1, 2, 3, 4, 5, 100]

5. 將元素插入串列中指定的索引位置,insert()

list1 = [1,2,3,4,5]
print("插入前:",list(list1))
list1.insert(3,19)
#在索引位置為3的位置,插入值為19的數字
print("插入後:",list(list1))

輸出:
插入前: [1, 2, 3, 4, 5]
插入後: [1, 2, 3, 19, 4, 5]

6. 刪除串列中第一個指定的元素,remove()

list1 = [5,4,3,2,1,0]
print("用remove刪除前:",list(list1))
list1.remove(5)
#刪除第一個值為5的數字
print("用remove刪除後:",list(list1))

輸出:
用remove刪除前: [5, 4, 3, 2, 1, 0]
用remove刪除後: [4, 3, 2, 1, 0]

7. 用pop刪除元素,pop()

7.1 沒參數時,刪除串列的最後一個值
list1 = [5,4,3,2,1,0]
print("用pop刪除前(沒參數):",list(list1))
list1.pop()
print("用pop刪除後(沒參數):",list(list1))

輸出:
用pop刪除前(沒參數): [5, 4, 3, 2, 1, 0]
用pop刪除後(沒參數): [5, 4, 3, 2, 1]

7.2 有參數時,刪除串列中該參數位置的值
list1 = [5,4,3,2,1,0]
print("用pop刪除前(有參數):",list(list1))
list1.pop(3)
#串列中索引值為3的值是2
print("用pop刪除後(有參數):",list(list1))

輸出:
用pop刪除前(有參數): [5, 4, 3, 2, 1, 0]
用pop刪除後(有參數): [5, 4, 3, 1, 0]

8. 刪除元素、串列,del

8.1 刪除元素
list1 = [5,4,3,2,1,0]
print("用del刪除元素前:",list(list1))
del list1[2]
#串列中索引值為2的值是3
print("用del刪除元素後:",list(list1))

輸出:
用del刪除元素前: [5, 4, 3, 2, 1, 0]
用del刪除元素後: [5, 4, 2, 1, 0]

8.2 刪除串列
list1 = [5,4,3,2,1,0]
print("用del刪除串列前:",list(list1))
del list1[1:3]
#刪除串列中索引值為1的值是4
#刪除串列中索引值為2的值是3
print("用del刪除串列後:",list(list1))

輸出:
用del刪除串列前: [5, 4, 3, 2, 1, 0]
用del刪除串列後: [5, 2, 1, 0]

9. 串列由小到大排序,sort()

list1 = [7,2,85,44,25,65,35]
print("排序前:",list(list1))
list1.sort()
print("排序後:",list(list1))

輸出:
排序前: [7, 2, 85, 44, 25, 65, 35]
排序後: [2, 7, 25, 35, 44, 65, 85]

10. 串列反轉,reverse()

list1 = [7,2,85,44,25,65,35]
print("反轉前:",list(list1))
list1.reverse()
print("反轉後:",list(list1))

輸出:
反轉前: [7, 2, 85, 44, 25, 65, 35]
反轉後: [35, 65, 25, 44, 85, 2, 7]

11. 串列由大到小排序,sort()、reverse()

list1 = [7,2,85,44,25,65,35]
print("由大到小排序前:",list(list1))
list1.sort()
list1.reverse()
print("由大到小排序後:",list(list1))

輸出:
由大到小排序前: [7, 2, 85, 44, 25, 65, 35]
由大到小排序後: [85, 65, 44, 35, 25, 7, 2]

12. 串列排序,產生新串列(list2)並保留原本串列(list1),sorted()

12.1 reverse=False,代表由小到大排列
list1 = [7,2,85,44,25,65,35]
print("排序前list1:",list(list1))
list2 = sorted(list1, reverse=False)
print("排序後list1:",list(list1))
print("排序後list2:",list(list2))

輸出:
排序前list1: [7, 2, 85, 44, 25, 65, 35]
排序後list1: [7, 2, 85, 44, 25, 65, 35]
排序後list2: [2, 7, 25, 35, 44, 65, 85]

12.2 reverse=True,代表由大到小排列
list1 = [7,2,85,44,25,65,35]
print("排序前list1:",list(list1))
list2 = sorted(list1, reverse=True)
print("排序後list1:",list(list1))
print("排序後list2:",list(list2))

輸出:
排序前list1: [7, 2, 85, 44, 25, 65, 35]
排序後list1: [7, 2, 85, 44, 25, 65, 35]
排序後list2: [85, 65, 44, 35, 25, 7, 2]


沒有留言:

張貼留言