Python 列表 — list

這是我參與更文挑戰的第15天,活動詳情查看: 更文挑戰php


引言

list(列表) 是 Python 中使用 最頻繁 的數據類型,在其餘語言中一般叫作 數組java


列表定義

  • 專門用於存儲 一組 信息
  • 列表用 [] 定義,數據 之間使用 , 分隔
  • 列表的 索引0 開始
    • 索引 就是數據在 列表 中的位置編號,索引 又能夠被稱爲 下標

name_list = ["hui", "zack", "wang"]
複製代碼

列表索引


注意:從列表中取值時,若是 超出索引範圍,程序會報錯python


列表經常使用操做

  • IPython 中定義一個 列表,例如:name_list = []
  • 輸入 name_list. 按下 TAB 鍵,Ipython 會提示 列表 可以使用的 方法 以下:

列表方法提示


列表方法說明

序號 分類 方法 說明
1 增長 列表.insert(索引, 數據) 在指定位置插入數據
列表.append(數據) 在末尾追加數據
列表.extend(列表2) 將列表2 的數據追加到列表
2 修改 列表[索引] = 數據 修改指定索引的數據
3 刪除 del 列表[索引] 刪除指定索引的數據
列表.remove[數據] 刪除第一個出現的指定數據
列表.pop() 刪除末尾數據
列表.pop(索引) 刪除指定索引數據
列表.clear() 清空列表
4 統計 len(列表) 列表長度
列表.count(數據) 數據在列表中出現的次數
5 排序 列表.sort() 升序排序
列表.sort(reverse=True) 降序排序
列表.reverse() 逆序、反轉

列表增長數據 - IPython 測驗

In [2]: animal_list = ['牛', '虎', '兔']

In [3]: animal_list
Out[3]: ['牛', '虎', '兔']

In [4]: # insert 指定位置插入數據

In [5]: animal_list.insert(0, '鼠')  # 往列表第 0 位置插入

In [6]: animal_list
Out[6]: ['鼠', '牛', '虎', '兔']


In [7]: # append 在末尾追加數據

In [8]: animal_list.append('龍')

In [9]: animal_list
Out[9]: ['鼠', '牛', '虎', '兔', '龍']
    

In [10]: animal_list2 = ['蛇', '馬', '羊']

In [11]: # expend 把其餘列表數據追加到列表中

In [12]: animal_list.extend(animal_list2)

In [13]: animal_list
Out[13]: ['鼠', '牛', '虎', '兔', '龍', '蛇', '馬', '羊']
    
複製代碼

列表修改數據 - IPython 測驗

In [15]: name_list = ['hui', 'zhangsan', 'lisi']

In [16]: # 經過列表索引修改數據

In [17]: name_list[1] = 'zack'

In [18]: name_list
Out[18]: ['hui', 'zack', 'lisi']

In [19]: name_list[2] = 'wang'

In [20]: name_list
Out[20]: ['hui', 'zack', 'wang']

In [21]:
複製代碼

列表刪除數據 - IPython 測驗

In [21]: lang_list = ['python', 'java', 'c', 'c++', 'php']

In [22]: # del 關鍵字刪除列表數據

In [23]: del lang_list[0]

In [24]: lang_list
Out[24]: ['java', 'c', 'c++', 'php']


In [25]: # remove 方法移除列表數據

In [26]: lang_list.remove('java')

In [27]: lang_list
Out[27]: ['c', 'c++', 'php']


In [28]: # pop 方法刪除列表末尾數據

In [29]: lang_list.pop()
Out[29]: 'php'

In [30]: lang_list
Out[30]: ['c', 'c++']


In [31]: # pop 刪除列表指定索引數據

In [32]: lang_list.pop(1)
Out[32]: 'c++'

In [33]: lang_list
Out[33]: ['c']


In [34]: # clear 方法清空列表

In [35]: lang_list.clear()

In [36]: lang_list
Out[36]: []

In [37]: name_list = ['hui', 'zack', 'wang']

In [38]: name_list.clear()

In [39]: name_list
Out[39]: []

複製代碼

列表統計數據 - IPython 測驗

In [41]: name_list = ['hui', 'wang', 'zack', 'hui', 'hui', 'wang']

In [42]: # len 方法計算列表長度

In [43]: len(name_list)
Out[43]: 6

    
In [44]: # count 方法統計數據在列表中出現的次數

In [45]: name_list.count('hui')
Out[45]: 3

In [46]: name_list.count('wang')
Out[46]: 2

In [47]: name_list.count('zack')
Out[47]: 1
複製代碼

列表數據排序 - IPython 測驗

In [49]: num_list = [2, 5, 3, 1, 6, 4, 7, 8]

In [50]: # sort 方法默認升序排序

In [51]: num_list.sort()

In [52]: num_list
Out[52]: [1, 2, 3, 4, 5, 6, 7, 8]
    

In [53]: # sort(reverse=True) 降序排序

In [54]: num_list.sort(reverse=True)

In [55]: num_list
Out[55]: [8, 7, 6, 5, 4, 3, 2, 1]
    

In [56]: # reverse 方法逆序、反轉

In [57]: num_list.reverse()

In [58]: num_list
Out[58]: [1, 2, 3, 4, 5, 6, 7, 8]

In [59]: name_list = ['hui', 'wang', 'zack']

In [60]: name_list.reverse()

In [61]: name_list
Out[61]: ['zack', 'wang', 'hui']

In [62]:
複製代碼

循環遍歷列表

遍歷 就是 從頭至尾 依次列表 中獲取數據c++


while 循環遍歷

In [62]: name_list = ['hui', 'zack', 'wang']

In [63]: i = 0

In [64]: while i < len(name_list):
    ...:     print(name_list[i])
    ...:     i = i + 1
    ...:
hui
zack
wang
複製代碼

while 循環要判斷列表的長度,而後經過列表索引獲取數據數組


for 循環遍歷

  • Python 中爲了提升列表的遍歷效率,專門提供的 迭代 iteration 遍歷
  • 使用 for 就可以實現迭代遍歷
In [62]: name_list = ['hui', 'zack', 'wang']
    
In [65]: for name in name_list:
    ...:     print(name)
    ...:
hui
zack
wang

複製代碼

Q: for 循環怎麼才能知道遍歷到哪一個位置了?markdown

A: 能夠經過一個 計數器變量 count 來統計app

In [66]: name_list = ['hui', 'zack', 'wang']

In [67]: count = 0

In [68]: for name in name_list:
    ...:     print(count)
    ...:     print(name)
    ...:     count = count + 1
    ...:
0
hui
1
zack
2
wang
複製代碼

A: 也能夠經過內置函數 enumerate() 來進行枚舉ide

In [69]: name_list = ['hui', 'zack', 'wang']

In [70]: for i, name in enumerate(name_list):
    ...:     print(i)
    ...:     print(name)
    ...:
0
hui
1
zack
2
wang
複製代碼

知識擴展

del 關鍵字介紹

  • 使用 del 關鍵字(delete) 一樣能夠刪除列表中元素
  • del 關鍵字本質上是用來 將一個變量從內存中刪除的
  • 若是使用 del 關鍵字將變量從內存中刪除,後續的代碼就不能再使用這個變量了
name_list = ['hui', 'wang', 'zack']
del name_list[1]

# 刪除整列表
del name_list
複製代碼

在平常開發中,要從列表刪除數據,建議 使用列表提供的方法函數


關鍵字、函數和方法

關鍵字Python 內置的、具備特殊意義的標識符post

In [1]: import keyword
In [2]: print(keyword.kwlist)
In [3]: print(len(keyword.kwlist))
複製代碼

關鍵字後面不須要使用括號


函數 封裝了獨立功能,能夠直接調用

def say_hello():
    print('hello')
    
say_hello()

複製代碼

函數須要死記硬背


方法 和函數相似,一樣是封裝了獨立的功能

方法 須要經過 對象 來調用,表示針對這個 對象 要作的操做

name_list = ['hui', 'zack', 'wang']

name_list.sort()
name_list.reverse()
name_list.pop()
name_list.clear()
複製代碼

在對象後面輸入 .,而後選擇針對這個對象要執行的操做,記憶起來比函數要簡單不少


尾語

✍ 用 Code 譜寫世界,讓生活更有趣。❤️

✍ 萬水千山老是情,點贊再走行不行。❤️

✍ 碼字不易,還望各位大俠多多支持。❤️


016.png

相關文章
相關標籤/搜索