列表是python的基本數據類型之一,用[]來表示,能夠存放各類數據類型(什麼都能裝,能裝對象的對象)python
列表相比於字符串,不只能夠存放不一樣類型的數據,並且能夠存放大量的數據.api
列表切片切出來的內容依舊是列表.app
2.1索引:spa
lst=['馬化騰','馬雲','王健林','雷軍','劉翔','蕭敬騰'] print(lst[0]) lst=['馬化騰','馬雲','王健林','雷軍','劉翔','蕭敬騰'] lst[2]='賴美雲'
print(lst)#這裏說明列表是能夠發生改變的,與字符串不一樣,字符串每次操做 都會返回一個新的字符串
2.2切片
1 lst=['馬化騰','馬雲','王健林','雷軍','劉翔','蕭敬騰'] 2 print(lst[0:4]) 3
4 lst=['馬化騰','馬雲','王健林','雷軍','劉翔','蕭敬騰'] 5 print(lst[-1:-4:-2]) #倒着,帶步長,跳着也能夠取
1.1append 追加3d
1 lst=['馬化騰','馬雲','王健林','雷軍','劉翔','蕭敬騰'] 2 print(lst) 3 lst.append('張傑') 4 print(lst) 5 #########運行結果
6 ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 7 ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰', '張傑'] #在原列表的末尾加入新的東西.
1.2 insert(index, 元素) 在index位置添加元素code
1 lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 2 lst.insert(1,'劉德華') #在1位置插入劉德華,原來在一後面的元素就會向後移動一位
3 print(lst)
1.3 extend() 迭代添加
1 lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 2 lst.extend('大張偉') #把輸入的字符串一個一個迭代添加到列表的最後
3 print(lst) 4 #['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰', '大', '張', '偉']
5 lst.extend(['霍元甲']) #把字符串整個添加到列表的最後
6 print(lst) 7 #['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰', '大', '張', '偉', '霍元甲']
8 lst.extend(['朱元璋','李白']) #把多個字符串添加到列表的最後
9 print(lst) 10 #['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰', '大', '張', '偉', '霍元甲', '朱元璋', '李白']
2.1pop(index)按照位置刪除元素
1 lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 2 lst.pop(2) #刪除2號元素,括號裏什麼也不寫,默認刪除最後一個
3 print(lst) 4 # ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔']
2.2remove(元素)直接刪除元素
1 lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 2 lst.remove("馬雲") #刪除知道元素具體內容的指定元素
3 print(lst) 4 #['馬化騰', '王健林', '雷軍', '劉翔', '蕭敬騰']
5 lst.remove("哈哈") #刪除不存在的元素會報錯
6 print(lst) 7 # ValueError: list.remove(x): x not in list報錯內容
2.3del切片
1 lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 2 del lst[1:3] #與前兩個刪除不一樣的是格式上要 del+空格+列表
3 print(lst) 4 # ['馬化騰', '雷軍', '劉翔', '蕭敬騰']
2.4clear()清空列表
1 lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 2 lst.clear() 3 print(lst) 4 # []
3.1索引修改對象
1 lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 2 lst[1]='丘比特' #把指定元素修改爲指定內容
3 print(lst) 4 # ['馬化騰', '丘比特', '王健林', '雷軍', '劉翔', '蕭敬騰']
3.2切片修改
lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] lst[1:4:3]=['楊冪','迪麗熱巴'] #若是補償不是一,要注意元素的個數
print(lst) # ValueError: attempt to assign sequence of size 2 to extended slice of size 1
lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] lst[1:4]=['楊冪','迪麗熱巴'] #若是步長是一,就不用關心元素的個數
print(lst) #['馬化騰', '楊冪', '迪麗熱巴', '劉翔', '蕭敬騰']
列表是一個可迭代對象,因此能夠進行for循環,分別輸出列表中的每個元素.blog
for el(元素) in lst: 排序
print(el)索引
5.1次數(count)
1 lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 2 num=lst.count('馬雲') #查詢馬雲出現的個數 3 print(num) 4 #1
5.2排序(sort)
lst = [1,2,3,9,4,5,6,8] lst.sort() #排序,默認升序
print(lst) #[1, 2, 3, 4, 5, 6, 8, 9]
lst = [1,2,3,9,4,5,6,8] lst.sort(reverse=True) #降序
print(lst) #[9, 8, 6, 5, 4, 3, 2, 1]
5.3反轉(reverse)
1 lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 2 lst.reverse() #反轉
3 print(lst) 4 #['蕭敬騰', '劉翔', '雷軍', '王健林', '馬雲', '馬化騰']
5.4長度(len)
1 lst = ['馬化騰', '馬雲', '王健林', '雷軍', '劉翔', '蕭敬騰'] 2 lst.reverse() #反轉
3 print(lst) 4 #['蕭敬騰', '劉翔', '雷軍', '王健林', '馬雲', '馬化騰']
採用降維的操做,一層一層的看lst=[1,'hua',5,'會有鬼',[1,5,'發過火',54,[5,5,6,'fgh','法國紅酒']]]
print(lst[3]) #找到會有鬼
print(lst[2:4]) #找到5和會有鬼
print(lst[3][2]) #找到會有鬼的鬼字
s=lst[1] #拿到hua,將首字母大寫,再扔回去
s=s.capitalize() # lst[1]=s # print(lst) # lst=[1,'hua',5,'會有鬼',[1,5,'發過火',54,[5,5,6,'fgh','法國紅酒']]] #把發過火改爲發過水
lst[4][2]=lst[4][2].replace('火','水') #要定位到發過火,不要定位到火,才能改
print(lst) #[1, 'hua', 5, '會有鬼', [1, 5, '發過火', 54, [5, 5, 6, 'fgh', '法國紅酒'], '雪碧']]
俗稱不可變的列表,又被稱爲只讀列表,元組也是python的只讀列表之一用()括起來,裏面能夠聽任何數據類型的數據,可是不能改.
1 tu=(1,'太白','李白','太黑','怎麼黑') 2 print(tu) 3 print(tu[0]) 4 print(tu[1]) 5 print(tu[1:4]) 6 4.1for循環便利元組 7 for el in tu: 8 print(el)
range能夠幫我獲取到一組數據經過for循環打印這組數據
1 for i in range(0,101,2): 2 print(i)