列表(list):
1.什么是列表
列表是python中的容器類的數(shù)據(jù)類型妙痹,可以用來存儲(chǔ)多個(gè)數(shù)據(jù)÷龋可變的惯吕,有序的。
可變指的是列表中的元素的值和位置以及列表的長度可變 --->決定列表可以進(jìn)行增刪改
有序 --->決定可以通過下標(biāo)來獲取元素
2.字面量
[元素1, 元素2, 元素3....]
[] ---> 空列表
列表中的元素可以是任何類型的數(shù)據(jù) -->包括整數(shù)怕午、浮點(diǎn)數(shù)废登、布爾、字符串郁惜、列表堡距、字典、元祖兆蕉、集合羽戒、函數(shù)、類的對象等
list1 = [23, 1.87, 'abc'] # 聲明一個(gè)變量list1,給它賦了一個(gè)列表虎韵。列表有三個(gè)元素
聲明一個(gè)列表易稠,列表中有三個(gè)元素,分別是[1,2], 'abc', False
list2 = [[1,2], 'abc',False]
list3 = [{'a': 10},{'abc': True}]
print(type(list3))
注意:變量也可以作為列表的元素
name = '路飛'
names = ['小明', '小花', '小紅', name]
print(names)
3.獲取列表元素
獲取單個(gè)元素
說明:列表一旦確定包蓝,列表中的每個(gè)元素的下標(biāo)就確定了驶社。下標(biāo)的范圍0~列表長度-1 / -1~列表長度
names = ['路飛', '娜美', '佐羅', '山治', '羅賓']
print(names[0], names[-4])
獲取部分元素(切片)
和字符串切片一樣。
列表[起始下標(biāo):結(jié)束下標(biāo)] --> 從起始下標(biāo)開始测萎,獲取到結(jié)束下標(biāo)前為止
列表[起始下標(biāo):結(jié)束下標(biāo):步長]
print(names[1:3])
print(names[:4:2])
print(names[::-1])
print(names[:])
4.元素的修改
films = ['綠巨人', '鋼鐵俠', '蜘蛛俠', '神奇女俠']
1.增(增加元素)
a.
列表.append(元素) ---> 在列表的末尾添加一個(gè)元素
films.append('美國隊(duì)長')
print(films)
films.append('恐怖游輪')
print(films)
b.
列表.insert(下標(biāo),元素) ---> 在指定的下標(biāo)前去添加指定的元素
films.insert(1, '雙瞳')
print(films)
films.insert(0, '雷神')
print(films)
2.刪(刪除列表中的元素)
"""
a.
del 列表[下標(biāo)] ---> 刪除列表中指定位置的元素
注意:del語句是python中用來刪除數(shù)據(jù)的語法亡电,可以刪除任何數(shù)據(jù)
heros = ['蓋倫', '兒童劫','維克拖', '提姆', '托兒索', '兒童劫']
del heros[-2]
print(heros)
b.
列表.remove(元素) ---> 刪除列表中指定的元素
注意:如果這個(gè)元素在列表中有多個(gè),只刪最前面的那一個(gè)
heros.remove('兒童劫')
print(heros)
c.
列表.pop() ---> 將列表中的最后一個(gè)元素取出
列表.pop(下標(biāo)) ---> 將列表中指定下標(biāo)對應(yīng)的元素取出
beauty = ['余婷', '范冰冰', '周迅', '楊穎', '楊冪', '趙麗穎']
person = beauty.pop()
print(beauty, person)
person = beauty.pop(1)
print(beauty, person)
3.改(修改列表中的元素)
列表[下標(biāo)] = 新值 ---> 修改指定下標(biāo)對應(yīng)的元素
teachers = ['余婷', '駱昊', '王海飛', '肖世榮']
teachers[0] = 'YuTing'
print(teachers)
5.列表相關(guān)運(yùn)算
1.+運(yùn)算
列表1 + 列表2 ---> 將列表1和列表2中的元素合并硅瞧,產(chǎn)生一個(gè)新的列表
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
print(list1 + list2)
print(list1)
2.*運(yùn)算
列表*n ---> 將列表中的元素重復(fù)n次份乒,產(chǎn)生一個(gè)新的列表
print(list1*3)
3.比較運(yùn)算
列表1 == 列表2 ---> 判斷兩個(gè)列表中的元素是否相等
print([1, 2, 3] == [2, 1, 3]) # False
print([1, 2, 3] == [1, 2, 3]) # True
補(bǔ)充:比較是否相等的兩種方式,== 和 is
一個(gè)數(shù)據(jù)有id腕唧、value和type三個(gè)元素或辖。
id --> 地址(數(shù)據(jù)在內(nèi)存中存儲(chǔ)的地址)
value --> 數(shù)據(jù)的值
type --> 數(shù)據(jù)的類型
python中變量存儲(chǔ)數(shù)據(jù)的時(shí)候存的時(shí)候數(shù)據(jù)的地址(id),取出來用的值(value)
== --> 判斷的是值是否相等
is --> 判斷的是地址是否相等(面試枣接!)
(了解)兩個(gè)列表比較大小颂暇,比較的是每個(gè)元素的大小