Python入門基礎(3 下)

咕嚕咕嚕學程式設計發表於2019-07-14

  接著講列表裡面的一些操作吧

  • 列表元素訪問與計數

 1.統計指定元素在列表中出現的次數使用count(),這就不必細說了,直接看程式碼,需要記住的是括號裡面放的是元素

list = [1,5,5,5,5,8,9]
print(list.count(5))

輸出結果:

4

  2.index()獲取指定元素首次出現的下標,若列表中不存在指定元素,則丟擲異常

list = [1,5,5,5,5,8,9]
print(list.index(5))

執行結果:

1

  3.如果想要知道某個元素是否存在列表中,使用in,具體的用法請看程式碼:

list = [1,5,5,5,5,8,9]
print(8 in list)

執行結果:

True
  • 列表排序

1.sort()按照指定規則對所有元素進行排序

list = [99,17,56,3,2,5,7]
list.sort()
print(list)
list.sort(reverse=True)#在裡面加上reverse = True之後降序排序
print(list)

執行結果:

[2, 3, 5, 7, 17, 56, 99]
[99, 56, 17, 7, 5, 3, 2]

2.在這再介紹一下sorted()和reversed()

sorted()是python的內建函式,對列表做出排序之後返回新列表,不對原列表作修改

reversed()返回一個逆序排序後的迭代物件,不對原列表做任何修改

list_v1 = [99,17,56,3,2,5,7]
print(sorted(list_v1))
print(list_v1) #經過sorted()操作之後,原列表沒做任何修改

print(list(reversed(list_v1))) 

執行結果:

[2, 3, 5, 7, 17, 56, 99]
[99, 17, 56, 3, 2, 5, 7]
[7, 5, 2, 3, 56, 17, 99]
  • 用於序列操作的常用內建函式

1.len():返回列表中的元素個數(也就是求列表的長度),元組,字典,集合,字串等都可以用

2.max(),min()函式:返回列表中的最大或最小元素,同樣適用於元組,字典,集合,range物件等

3.sum():對列表的元素進行求和

4.zip():返回可迭代的zip物件,這個東西不好解釋,直接看程式碼吧

list_v1 = [99,17,56,3,2,5,7]
list_v2 = [23,12,4,5,6,8,0]
list_v3 = zip(list_v1,list_v2)
print(list(list_v3))

執行結果:

[(99, 23), (17, 12), (56, 4), (3, 5), (2, 6), (5, 8), (7, 0)]

還有個列舉列表元素,enumerate(),返回列舉物件,其中每個元素包含下標和值的元組,對元組,字串同樣有效\

for i in enumerate("hello world"):
    print(i)

執行結果:

(0, 'h')
(1, 'e')
(2, 'l')
(3, 'l')
(4, 'o')
(5, ' ')
(6, 'w')
(7, 'o')
(8, 'r')
(9, 'l')
(10, 'd')

在這也展示一下遍歷列表的三種方式:

a = [1,5,7,88,9,3]#第一種
for i in a:
    print(i)

print()
for i in range(len(a)):#第二種
    print(i,a[i])

print()
for i,ele in enumerate(a):
    print(i,ele)

執行效果:

1
5
7
88
9
3

0 1
1 5
2 7
3 88
4 9
5 3

0 1
1 5
2 7
3 88
4 9
5 3

  還有個列表推導式,這個東西我不太會用,等我全部弄清楚了再來補吧

 

接下來講解一下列表切片的一些東西:

a = [1,5,7,88,9,3]#第一種
list_v1  = a[1:4:]
print(list_v1)

執行結果:

[5, 7, 88]

  在[]裡面第一個位置表示的是從哪開始切,如果不寫則預設為從最開始的那個元素開始,第二個位置表示結束的位置,如果不寫則表示莫認到最後

一個元素,第三個位置是步長,就是隔幾個元素隔的意思,

 

學程式設計需要大家多動手,我也是個菜鳥,大家一起努力,一起進步

  

相關文章