基本知識點:
①列表是最常用的Python數(shù)據(jù)類型,它可以作為一個方括號內(nèi)的逗號分隔值出現(xiàn)。
②列表的數(shù)據(jù)項不需要具有相同的類型
③與字符串的索引一樣,列表索引從0開始。列表可以進行截取、組合等。
④創(chuàng)建一個列表,只要把逗號分隔的不同的數(shù)據(jù)項使用方括號括起來即可。
如下所示:
>>>list = [1, 2, 3, 4, 5 ]
>>>list
[1, 2, 3, 4, 5 ]
訪問列表中的值
使用下標索引來訪問列表中的值,同樣你也可以使用方括號的形式截取字符,如下所示:
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7 ]
print ("list1[0]: ", list1[0])
print ("list2[1:5]: ", list2[1:5])
當索引超出了范圍時,Python會報一個IndexError錯誤,所以,要確保索引不要越界。
如果要取最后一個元素,除了計算索引位置外,還可以用-1做索引,直接獲取最后一個元素:
>>>list2[-1]
7
以此類推,可以獲取倒數(shù)第2個、倒數(shù)第3個,即list[-2],list[-3]
更新列表
list是一個可變的有序表,所以,可以往list中追加元素:
1.追加元素至末尾:用append()函數(shù)添加
>>>list = [1,2, 3, 4, 5 ]
>>>list.append(6)
>>> list
[1,2,3,4,5,6]
2.把元素插入到指定的位置,比如索引號為1的位置:用insert()函數(shù)添加,
>>>list = [1,2, 3, 4, 5 ]
>>>list.insert(1, 'Jack')
>>>list
[1, 'Jack', 2, 3, 4, 5]
刪除列表元素
1.可以使用 del 語句來刪除列表的元素,del list[i],i為索引位置,如下實例:
list1 = ['physics', 'chemistry', 1997, 2000]
print (list1)
del list1[2] #刪除第三個元素
print (list1)
2.要刪除list末尾的元素,用pop()方法:
list = [1,2, 3, 4, 5 ]
list.pop()
print (list)
結果:[1, 2, 3, 4]
3.要刪除指定位置的元素,用pop(i)方法,其中i是索引位置:
list = [1,2, 3, 4, 5 ]
list.pop(2)
print (list)
結果:[1, 2, 4, 5]
4.還有一個remove() 函數(shù)是用于移除列表中某個值的第一個匹配項。
aList = [123, 'xyz', 'zara', 'abc', 'xyz'];
aList.remove('xyz');
print ("List : ", aList)
aList.remove('abc');
print ("List : ", aList)
替換列表元素
要把某個元素替換成別的元素,可以直接賦值給對應的索引位置:
>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates[1] = 'Sarah'
>>> classmates
['Michael', 'Sarah', 'Tracy']
list里面的元素的數(shù)據(jù)類型也可以不同,比如:
>>> L = ['Apple', 123, True]
list元素也可以是另一個list,比如:
>>> s = ['python', 'java', ['asp', 'php'], 'scheme']
>>> len(s)
4
要注意s只有4個元素,其中s[2]又是一個list,如果拆開寫就更容易理解了:
>>> p = ['asp', 'php']
>>> s = ['python', 'java', p, 'scheme']
要拿到'php'可以寫p[1]或者s[2][1],因此s可以看成是一個二維數(shù)組,類似的還有三維、四維……數(shù)組,不過很少用到。
如果一個list中一個元素也沒有,就是一個空的list,它的長度為0:
>>> L = []
>>> len(L)
0
列表截取
下面例子中利用list[i:],i為想要開始截取的索引位置。其他的見下圖:
>>>L = ['Google', 'Runoob', 'Taobao']
>>> L[2]
'Taobao'
>>> L[-2]
'Runoob'
>>> L[1:]
['Runoob', 'Taobao']
列表腳本操作符
列表對 + 和 * 的操作符與字符串相似。+ 號用于組合列表,* 號用于重復列表。
如下所示:
列表函數(shù)&方法
Python包含以下函數(shù):
Python包含以下方法:
奇淫技巧之補充函數(shù)---python字符串與列表的相互轉換
1. 字符串轉列表(split()函數(shù))
str1 = "hi hello world"
print(str1.split(" "))
輸出:
['hi', 'hello', 'world']
2. 列表轉字符串(join()函數(shù))
l = ["hi","hello","world"]
print(" ".join(l))
輸出:
hi hello world
Python提供的函數(shù)和方法可以自己多敲代碼測試和使用,強化知識的同時加深下印象。