Python進階01 詞典
作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段宣告。謝謝!
基礎教程介紹了基本概念,特別是物件和類。
進階教程對基礎教程的進一步拓展,說明Python的細節。希望在進階教程之後,你對Python有一個更全面的認識。
之前我們說了,列表是Python裡的一個類。一個特定的表,比如說nl = [1,3,8],就是這個類的一個物件。我們可以呼叫這個物件的一些方法,比如 nl.append(15)。
我們要介紹一個新的類,詞典 (dictionary)。與列表相似,詞典也可以儲存多個元素。這種儲存多個元素的物件稱為容器(container)
基本概念
常見的建立詞典的方法:
>>>dic = {'tom':11, 'sam':57,'lily':100}
>>>print type(dic)
詞典和表類似的地方,是包含有多個元素,每個元素以逗號分隔。但詞典的元素包含有兩部分,鍵和值,常見的是以字串來表示鍵,也可以使用數字或者真值來表示鍵(不可變的物件可以作為鍵)。值可以是任意物件。鍵和值兩者一一對應。
比如上面的例子中,‘tom’對應11,'sam對應57,'lily'對應100
與表不同的是,詞典的元素沒有順序。你不能通過下標引用元素。詞典是通過鍵來引用。
>>>print dic['tom']
>>>dic['tom'] = 30
>>>print dic
構建一個新的空的詞典:
>>>dic = {}
>>>print dic
在詞典中增添一個新元素的方法:
>>>dic['lilei'] = 99
>>>print dic
這裡,我們引用一個新的鍵,並賦予它對應的值。
詞典元素的迴圈呼叫
dic = {'lilei': 90, 'lily': 100, 'sam': 57, 'tom': 90} for key in dic: print dic[key]
在迴圈中,dict的每個鍵,被提取出來,賦予給key變數。
通過print的結果,我們可以再次確認,dic中的元素是沒有順序的。
詞典的常用方法
>>>print dic.keys() # 返回dic所有的鍵
>>>print dic.values() # 返回dic所有的值
>>>print dic.items() # 返回dic所有的元素(鍵值對)
>>>dic.clear() # 清空dic,dict變為{}
另外有一個很常用的用法:
>>>del dic['tom'] # 刪除 dic 的‘tom’元素
del是Python中保留的關鍵字,用於刪除物件。
與表類似,你可以用len()查詢詞典中的元素總數。
>>>print(len(dic))
總結
詞典的每個元素是鍵值對。元素沒有順序。
dic = {'tom':11, 'sam':57,'lily':100}
dic['tom'] = 99
for key in dic: ...
del, len()
相關推薦
Python進階01 詞典
作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段宣告。謝謝! 基礎教程介紹了基本概念,特別是物件和類。 進階教程對基礎教程的進一步拓展,說明Python的細節。希望在進階教程之後,你對Python有一個更全面的
python進階01高階程式設計02網路 -tcp
1.TCP簡介 1.1TCP介紹 TCP協議,傳輸控制協議(英語:Transmission Control Protocol,縮寫為 TCP)是一種面向連線的、可靠的、基於位元組流的傳輸層通訊協議,由IETF的RFC 793定義。 TCP通訊需要經過建立連線、資
Python進階技巧匯總01
chat 關註 port 字符 申請 mon 表示 lac 復雜 總結自原創: Leoxin 菜鳥學Python 原文地址:強烈推薦|麻煩剛關註2699名小夥伴一定要看,信息量太大 1 字符串 字符串的format格式一般有兩種操作: (1)使用%操作符 name =
python進階
第二篇 ice api http協議 第三篇 art python pan 進階 目錄 第一篇:HTML介紹 第二篇:css層疊樣式 第三篇:JavaScript 第四篇:jquery 第五篇:數據庫基礎之mysql 第六篇:python關於mysq
python進階十_正則表達式(一)
之前 dsm 常見 style ear 單個字符 src ace 例如 近期狀態一直不太好,至於原因。怎麽說呢,不好說,總之就是糾結中覆蓋著糾結。心思全然不在點上。希望能夠借助Python的學習以及博客的撰寫來調整回來,有的時候回頭想一想。假設真的是我自己的問題呢,曾經
Python自動化開發課堂筆記【Day06】 - Python進階(類)
擴展性 程序 lex 類名 人物 優點 ini 參數 self. 類與對象 面向過程的程序設計: 優點:極大的降低了程序的復雜度 缺點:一套流水線或者流程就是用來解決一個問題,生產汽水的流水線無法生產汽車,即使能,也是得大改,改一個組件,牽一發而動全身面向對象的程序設計
Python自動化開發課堂筆記【Day08】 - Python進階(面向對象的高級用法,網絡編程)
sta 自然 log 報錯 面向 read urn total 析構函數 面向對象的高級用法 1. __str__ 只要執行打印對象的操作,就會觸發該對象類中的__str__方法(也就是對象的綁定方法)它是一種默認的方法,默認的打印輸出為<__main__.Foo o
Python進階-繼承中的MRO與super
puthon摘要本文講述Python繼承關系中如何通過super()調用“父類”方法,super(Type, CurrentClass)返回CurrentClass的MRO中Type的下一個類的代理;以及如何設計Python類以便正確初始化。1. 單繼承中父類方法調用在繼承中,調用父類方法是很有必要的。調用父
Python進階---面向對象的程序設計思想(一)
anim 它的 代碼冗余 tell 汽水 處理流程 關系 apach 精準 thon的面向對象 一、面向過程與面向對象的對比 面向過程的程序設計的核心是過程(流水線式思維),過程即解決問題的步驟,面向過程的設計就好比精心設計好一條流水線,考慮周全什麽時候處理什麽東西。 優點
Python進階---面向對象第三彈(進階篇)
python對象 one iss pri each super left connect ext Python對象中一些方法 一、__str__ class Teacher: def __init__(self,name,age): self.name
python進階---Python中的socket編程(一)
bin prot repr loop lang ket 應用 ndt 接收 初識socket編程 一、前言 socket基於C\S架構(客戶端\服務端)的編程模型,在Python中是以socket模塊存在的。 Socket是應用層與TCP/IP協議族通信的中間軟件抽象層,它
Python進階(3)_進程與線程中的lock(互斥鎖、遞歸鎖、信號量)
fun 我們 bsp 控制 支持 發生 class 線程 數據操作 1、同步鎖 (Lock) 當各個線程需要訪問一個公共資源時,會出現數據紊亂 例如: 1 import threading,time 2 def sub(): 3 global num
python進階------進程線程(五)
dex locked cep 陌生 cnblogs 信號 fault sig utf8 Python中的IO模型 同步(synchronous) IO和異步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分別是什麽,
python 進階(轉自http://python.jobbole.com/82633/)
火狐 數字 2.7 傳遞 https 可用 ips 編碼器 XML 網絡 通用 urllib -網絡庫(stdlib)。 requests -網絡庫。 grab – 網絡庫(基於pycurl)。 pycurl – 網絡庫(綁定libcurl)。 urllib3 – Py
python進階學習(一)
分享 target for buffer yun lena hello pri true 同樣是《python基礎教程(第二版)》的內容,只是後面內容學起來,相比前面會比較有趣,也更加實用,所以,將“基礎”改為“進階”。 python 電子書分享地址:http://yu
有哪些比較好的講Python進階的博客?
python 進階博客 Python是一種動態解釋型的編程語言,它可以在Windows、UNIX、MAC等多種操作系統以及Java、.NET開發平臺上使用。不過包含的內容很多,加上各種標準庫、拓展庫,亂花漸欲迷人眼。因此如何進階Python顯得非常重要。接下來看看比較好的講Python進階的博客,我這
Python 進階 之 函數對象
col blog pytho 函數 定義 pri pan log code Python的世界裏,萬物皆對象,函數當然也是: 首先要定義一個函數: def add(a,b): print a+b 其次定義一個字典來引用該函數: dic = {"add":add
Python進階---python strip() split()函數實戰(轉)
ogl alt rate syn str1 valid blog xxxxxxxx www 先看一個例子: >>> ipaddr = 10.122.19.10 File "", line 1 ipaddr = 10.122.19.10
python進階學習(一)--多線程編程
不用 才會 睡眠 關鍵字參數 war 信息 target 函數傳遞 消息隊列 1. 多線程 概念:簡單地說操作系統可以同時執行多個不用程序。例如:一邊用瀏覽器上網,一邊在聽音樂,一邊在用筆記軟件記筆記。 並發:指的是任務數多余cpu核數,通過操作系統的各種任務調度算
Python 進階學習筆記
def 進階學習 學習 blog 私有屬性 屬性和方法 .get line person 把函數作為參數 import math def add(x, y, f): return f(x) + f(y) print add(9, 16, math.sqr