主要參考廖雪峰的python教程
不斷的學習才能不斷發現好東西!整數(int)、浮點數(float)、字串(str)、布林值(bool)、空值(nonetype)、變數、常量富而不驕易,窮而不怨難
list:是一種有序的集合,可以隨時新增和刪除其中的元素;用索引來訪問list中每乙個位置的元素,記得索引是從0開始的;如果要取最後乙個元素,除了計算索引位置外,還可以用-1做索引,直接獲取最後乙個元素;當索引超出了範圍時,python會報乙個indexerror錯誤;用len()函式可以獲得list元素的個數;如果乙個list中乙個元素也沒有,就是乙個空的list,它的長度為0,如。unhashable type: 『list』,故不可以放入set和dict中。
tuple:tuple和list非常類似,也為有序集合,但是tuple一旦初始化就不能修改;因為tuple不可變,所以**更安全。如果可能,能用tuple代替list就盡量用tuple;tuple的陷阱:當你定義乙個tuple時,在定義的時候,tuple的元素就必須被確定下來;如果要定義乙個空的tuple,可以寫成();只有1個元素的tuple定義時必須加乙個逗號,來消除歧義,如(1,),這是因為括號()既可以表示tuple,又可以表示數學公式中的小括號,這就產生了歧義。
dict:全稱dictionary,在其他語言中也稱為map,使用鍵-值(key-value)儲存,具有極快的查詢速度;dict內部存放的順序和key放入的順序是沒有關係的。
和list比較,dict有以下幾個特點:
查詢和插入的速度極快,不會隨著key的增加而變慢;
需要占用大量的記憶體,記憶體浪費多。
而list相反:
查詢和插入的時間隨著元素的增加而增加;
占用空間小,浪費記憶體很少。
所以,dict是用空間來換取時間的一種方法。
正確使用dict非常重要,需要牢記的第一條就是dict的key必須是不可變物件。在python中,字串、整數等都是不可變的,因此,可以放心地作為key。而list是可變的,就不能作為key。由於乙個key只能對應乙個value,所以,多次對乙個key放入value,後面的值會把前面的值沖掉,也就是說
key不重複。
set:和dict類似,也是一組key的集合,但不儲存value。由於key不能重複,所以,在set中,沒有重複的key,重複元素在set中自動被過濾。要建立乙個set,需要提供乙個list作為輸入集合。set可以看成數學意義上的無序和無重複元素的集合,因此,兩個set可以做數學意義上的交集&、並集』等操作。set的原理和dict一樣,所以,同樣不可以放入可變物件,因為無法判斷兩個可變物件是否相等,也就無法保證set內部「不會有重複元素」,因此,不能把list放入set中,可以把tuple放入set中,但是tuple中若是含有list元素,則不能放入set中。
range:不可變數字序列型別;str,不可變的字串物件,即不可變的文字序列
frozenset:是凍結的集合,它是不可變的,存在雜湊值,好處是它可以作為字典的key,也可以作為其它集合的元素。缺點是一旦建立便不能更改,沒有add,remove方法。set是可變的,有add(),remove()等方法。既然是可變的,所以它不存在雜湊值。
baseexception
+– systemexit
+– keyboardinterrupt
+– generatorexit
+– exception
+– stopiteration
+– arithmeticerror
| +– floatingpointerror
| +– overflowerror
| +– zerodivisionerror
+– assertionerror
+– attributeerror
+– buffererror
+– eoferror
+– importerror
+– lookuperror
| +– indexerror
| +– keyerror
+– memoryerror
+– nameerror
| +– unboundlocalerror
+– oserror
| +– blockingioerror
| +– childprocesserror
| +– connectionerror
| | +– brokenpipeerror
| | +– connectionabortederror
| | +– connectionrefusederror
| | +– connectionreseterror
| +– fileexistserror
| +– filenotfounderror
| +– interruptederror
| +– isadirectoryerror
| +– notadirectoryerror
| +– permissionerror
| +– processlookuperror
| +– timeouterror
+– referenceerror
+– runtimeerror
| +– notimplementederror
+– syntaxerror
| +– indentationerror
| +– taberror
+– systemerror
+– typeerror
+– valueerror
| +– unicodeerror
| +– unicodedecodeerror
| +– unicodeencodeerror
| +– unicodetranslateerror
+– warning
+– deprecationwarning
+– pendingdeprecationwarning
+– runtimewarning
+– syntaxwarning
+– userwarning
+– futurewarning
+– importwarning
+– unicodewarning
+– byteswarning
+– resourcewarning
學習 Python學習(一) Python問答
一.為什麼要使用python?python的主要特點有 1 軟體質量,python 具有很強的可讀性,因此在重用和維護方面就比較方便 2 編碼效率,python沒有編譯和鏈結庫的過程 3 程式移植性,不做任何修改,python可執行在windows和linux系統 4 豐富的支撐庫,python既可...
python學習筆記 一 python簡介
python是一種計算機程式語言。python是一種什麼樣的語言?優雅,簡單,明確 執行速度慢,和c相比非常慢,因為python是解釋型語言,你的 在執行時會一行一行的翻譯成cpu能理解的機器碼,這個翻譯過程十分耗時,所以很慢 而c程式在允許前直接編譯成機器能識別的機器碼,所以執行起來速度非常快。不...
python學習之一 python安裝
python學習之一 python安裝 一 在linux系統 在linux上很可能已經自帶了python 這可能和你在安裝linux時的包的選擇有關係 測試方法是在linux環境下開啟shell然後輸入 pyton v python 2.6.6 注意這裡的命令 v的v是大寫的,我的系統中返回的是2....