字典一種key - value 的數據類型。linux
語法:windows
1 info = { 2 'car01': "Camry", 3 'car02': "Teana", 4 'car03': "Accord", 5 }
字典的特性:測試
增長spa
>>> info["car04"] = "q50" >>> info {'car01': 'Camry', 'car02': 'Teana', 'car03': 'Accord', 'car04': 'q50'}
修改code
>>> info["car01"] = "凱美瑞" >>> info {'car01': '凱美瑞', 'car02': 'Teana', 'car03': 'Accord', 'car04': 'q50'}
刪除blog
>>> info {'car01': '凱美瑞', 'car02': 'Teana', 'car03': 'Accord', 'car04': 'q50'} >>> info.pop("car01") '凱美瑞' >>> info {'car02': 'Teana', 'car03': 'Accord', 'car04': 'q50'}
>>> info {'car02': 'Teana', 'car03': 'Accord', 'car04': 'q50'} >>> del info["car02"] >>> info {'car03': 'Accord', 'car04': 'q50'}
#隨機刪除 >>> info {'car03': 'Accord', 'car04': 'q50'} >>> info.popitem() ('car04', 'q50') >>> info {'car03': 'Accord'}
查找資源
>>> info {'car01': 'Camry', 'car02': 'Teana', 'car03': 'Accord'} >>> "car01" in info True >>> info.get("car01") 'Camry' >>> info["car01"] 'Camry' >>> info["car04"]#不存在key的時候get獲取不報錯顯示空值 Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'car04' >>> info.get("car04")
循環rem
#方法1 for key in info: print(key,info[key]) #方法2 for k,v in info.items(): #會先把dict轉成list,數據裏大時莫用 print(k,v)
集合是一個無序的,不重複的數據組合,它的主要做用以下:get
一、去重,把一個列表變成集合,就自動去重了it
二、關係測試,測試兩組數據以前的交集、差集、並集等關係
s = set([3,5,9,10]) #建立一個數值集合 t = set("Hello") #建立一個惟一字符的集合 a = t | s # t 和 s的並集 b = t & s # t 和 s的交集 c = t – s # 求差集(項在t中,但不在s中) d = t ^ s # 對稱差集(項在t或s中,但不會同時出如今兩者中) 基本操做: t.add('x') # 添加一項 s.update([10,37,42]) # 在s中添加多項 使用remove()能夠刪除一項: t.remove('H') len(s) set 的長度 x in s 測試 x 是不是 s 的成員 x not in s 測試 x 是否不是 s 的成員 s.issubset(t) s <= t 測試是否 s 中的每個元素都在 t 中 s.issuperset(t) s >= t 測試是否 t 中的每個元素都在 s 中 s.union(t) s | t 返回一個新的 set 包含 s 和 t 中的每個元素 s.intersection(t) s & t 返回一個新的 set 包含 s 和 t 中的公共元素 s.difference(t) s - t 返回一個新的 set 包含 s 中有可是 t 中沒有的元素 s.symmetric_difference(t) s ^ t 返回一個新的 set 包含 s 和 t 中不重複的元素 s.copy() 返回 set 「s」的一個淺複製
對文件操做流程
一、打開文件,獲得文件句柄並賦值給一個變量
二、經過句柄對文件進行操做
三、關閉文件
基本操做
f = open('lyrics') #打開文件 first_line = f.readline() print('first line:',first_line) #讀一行 print('我是分隔線'.center(50,'-')) data = f.read()# 讀取剩下的全部內容,文件大時不要用 print(data) #打印文件 f.close() #關閉文件
打開文件的模式有:
"+" 表示能夠同時讀寫某個文件
"U"表示在讀取時,能夠將 \r \n \r\n自動轉換成 \n (與 r 或 r+ 模式同使用)
"b"表示處理二進制文件(如:FTP發送上傳ISO鏡像文件,linux可忽略,windows處理二進制文件時需標註)
with語句
爲了不打開文件後忘記關閉,能夠經過管理上下文,即:
with open('log','r') as f: ...
如此方式,當with代碼塊執行完畢時,內部會自動關閉並釋放文件資源。
在Python 2.7 後,with又支持同時對多個文件的上下文進行管理,即:
with open('log1') as obj1, open('log2') as obj2: pass