Day2-------列表、元組、字典等
阿新 • • 發佈:2018-02-04
用法 mali div day tom 分割 span 多級 clas
1. 列表(list)
列表是我們最以後最常用的數據類型之一,通過列表可以對數據實現最方便的存儲、修改等操作
1.定義列表
1 names = [‘Alex‘,"Tenglan",‘Eric‘]
2.列表中可以嵌套任何類型
- 中括號起來
- ,分割每個元素
- 列表中的元素可以是 數字,字符串,列表,布爾值....所有的都能放進去
- "集合" ,內部放置任何東西
3.通過下標訪問列表中的元素,下標從0開始計數
1 >>> names[0] 2 ‘Alex‘ 3 >>> names[2] 4 ‘Eric‘ 5 >>> names[-1]6 ‘Eric‘ 7 >>> names[-2] #還可以倒著取 8 ‘Tenglan‘
4.列表的遍歷
1 names = [‘Alex‘,"Tenglan",‘Eric‘] 2 for i in names: 3 print(i)
輸出:
Alex
Tenglan
Eric
5.追加(append)
append:在列表的最後追加元素
1 names = [‘Alex‘,"Tenglan",‘Eric‘] 2 3 names.append("我是新來的") 4 print(names)
輸出:
[‘Alex‘, ‘Tenglan‘, ‘Eric‘, ‘我是新來的‘]
6.插入
Insert的用法:
列表.insert(要插入的下標,要插入的內容)
1 names = [‘Alex‘, ‘Tenglan‘, ‘Eric‘, ‘Rain‘, ‘Tom‘, ‘Amy‘, ‘我是新來的‘] 2 3 names.insert(2,"強行從Eric前面插入") 4 print(names)
輸出:
[‘Alex‘, ‘Tenglan‘, ‘強行從Eric前面插入‘, ‘Eric‘, ‘Rain‘, ‘Tom‘, ‘Amy‘, ‘我是新來的‘]
7.修改
操作:直接將要修改元素覆蓋
1 names = [‘Alex‘, ‘Tenglan‘, ‘Eric‘, ‘Rain‘, ‘Tom‘, ‘Amy‘, ‘我是新來的‘] 2 3 names[2] = "該換人了" 4 print(names)
輸出:
[‘Alex‘, ‘Tenglan‘, ‘該換人了‘, ‘Rain‘, ‘Tom‘, ‘Amy‘, ‘我是新來的‘]
8.刪除
(1)del
names = [‘Alex‘, ‘Tenglan‘, ‘該換人了‘, ‘Rain‘, ‘Tom‘, ‘Amy‘, ‘我是新來的‘] del names[2]
(2)remove
1 names.remove("Eric") #括號裏跟的是元素內容
(3)pop
names.pop(3) #不加下標就是刪除最後一個
9.擴展(合並)
1 names = [‘Alex‘, ‘Tenglan‘, ‘Rain‘, ‘Tom‘, ‘Amy‘] 2 b = [1,2,3,] 3 names.extend(b) 4 print(names)
輸出:
[‘Alex‘, ‘Tenglan‘, ‘Rain‘, ‘Tom‘, ‘Amy‘, 1, 2, 3]
10.拷貝(copy)
names = [‘Alex‘, ‘Tenglan‘, ‘Rain‘, ‘Tom‘, ‘Amy‘] name_copy = names.copy()
11.統計(count)
1 names = [‘Alex‘, ‘Tenglan‘, ‘Amy‘, ‘Tom‘, ‘Amy‘, 1, 2, 3] 2 3 print(names.count("Amy"))
輸出: 2
12.排序(sort)
註意:在python3.0中,不同類型的數據不能排序
1 b = [1,5,6,4,3] 2 b.sort() 3 print(b)
輸出:
[1, 3, 4, 5, 6]
13.反轉(reverse)
1 names = [‘Alex‘, ‘Tenglan‘, ‘Amy‘, ‘Tom‘, ‘Amy‘, 1, 2, 3] 2 3 names.reverse() 4 print(names)
輸出:
[3, 2, 1, ‘Amy‘, ‘Tom‘, ‘Amy‘, ‘Tenglan‘, ‘Alex‘]
14.定位(index)
註意:只能返回第一個找到的下標
1 names = [‘Alex‘, ‘Tenglan‘, ‘Amy‘, ‘Tom‘, ‘Amy‘, 1, 2, 3] 2 3 print(names.index("Amy"))
輸出:2
15.enumrate
1 list = ["房子", "車子", "票子", "孩子"] 2 for index,product in enumerate(list): 3 print(index,product)
輸出:
0 房子 1 車子 2 票子 3 孩子
2.元組(tuple)
定義:元組其實跟列表差不多,也是存一組數,只不是它一旦創建,便不能再修改,所以又叫只讀列表
語法:
1 names = ("alex","jack","eric")
它只有2個方法,一個是count,一個是index,完畢。
3.字典(dict)
1.特性
字典的特性:
- dict是無序的
- key必須是唯一的
2.語法
info = { ‘stu1101‘: "TengLan Wu", ‘stu1102‘: "LongZe Luola", ‘stu1103‘: "XiaoZe Maliya", }
3.增加
1 info = { 2 ‘stu1101‘: "張三", 3 ‘stu1102‘: "李四", 4 ‘stu1103‘: "王五", 5 } 6 7 info["stu1104"] = "趙六" 8 print(info)
輸出:
{‘stu1101‘: ‘張三‘, ‘stu1102‘: ‘李四‘, ‘stu1103‘: ‘王五‘, ‘stu1104‘: ‘趙六‘}
4.修改
info = { ‘stu1101‘: "張三", ‘stu1102‘: "李四", ‘stu1103‘: "王五", } info["stu1102"] = "尼古拉斯 趙四" print(info)
輸出:
{‘stu1101‘: ‘張三‘, ‘stu1102‘: ‘尼古拉斯 趙四‘, ‘stu1103‘: ‘王五‘}
5.刪除
pop
info = { ‘stu1101‘: "張三", ‘stu1102‘: "李四", ‘stu1103‘: "王五", } info.pop("stu1103") print(info)
del
info = { ‘stu1101‘: "張三", ‘stu1102‘: "李四", ‘stu1103‘: "王五", } del info[‘stu1103‘] print(info)
6.查找
1 info = { 2 ‘stu1101‘: "張三", 3 ‘stu1102‘: "李四", 4 ‘stu1103‘: "王五", 5 } 6 7 print("stu1102" in info ) #標準用法 8 print(info.get("stu1102") ) #獲取,用這個安全 9 print(info["stu1102"]) #同上,但是看下面 10 print(info["stu1105"] ) #如果一個key不存在,就報錯,get不會,不存在只返回None
輸出:
True
李四
李四
7.多級字典嵌套及操作
1 menu = { 2 "南京":{ 3 "江寧":{ 4 "金科":{}, 5 "曉莊":{}, 6 "南工程":{} 7 }, 8 "浦口":{ 9 "南大":{}, 10 "東南":{}, 11 }, 12 "仙林":{ 13 "南財":{}, 14 "南師大":{} 15 } 16 }, 17 "常州":{ 18 "江理":{} 19 }, 20 "蘇州":{ 21 "蘇大":{} 22 } 23 }
Day2-------列表、元組、字典等