數字:python
整型 int(integer)app
python3中已經不區分整型int和長整型long,統一叫整型ide
浮點型 float(至關於小數)oop
舉例:2e-4 == 2*(10**-4) == 0.0002 # e後面跟幾就表示是10的幾回方
2.3e+3 == 2.3*(10**3) == 2300學習
複數 complexspa
複數由實數部分和虛數部分組成,通常形式爲x+yj,其中的x是複數的實數部分,y是複數的虛數部分,這裏的x和y都是實數。舉例:(-5+4j)和(2.3-4.6j)是複數的例子,其中-5,4爲實數,j爲虛數。code
布爾值:對象
它只有2種狀態:True 和 Falseblog
列表: 排序
1 # __author:"#Cheng" 2 # date:2018/2/13 3 4 # 列表能夠用來 增、刪、改、查 5 # [ ]用中括號的形式表現出來。 6 # a = [] 至關於生成了一段空的列表,而且賦了一個叫a的變量。 7 # a = ['小明',‘小剛’,‘張三’,‘小李’,‘王二’] 列表中的元素用逗號隔開。它是存在位置關係的。 8 # a[3] 表示,3是索引(下標),索引都是從0開始。該字符串表示變量爲a的列表中的第四個元素,所以輸出結果是:小李 9 10 a = ['小明', '小剛', '張三', '小李', '王二'] 11 # 下面是從左到右取 12 print(a[3]) # 取出小李 13 print(a[1:3]) # 取出小剛和張三 14 print(a[1:]) # 冒號後面沒有索引號,默認取出至最後一個元素 15 print(a[0:]) # 取出列表所有元素,同上 16 print(a[1:-1]) # 取出到倒數第二個元素,最後一個元素不取出 17 print(a[1:-1:2]) # 不連續,跳着取出元素:最後的2是「步幅」,就是隔一個取,若是換成1就是依次取,那就像上面一行 18 print(a[1::2]) # 同上。從索引1取到最後一個元素,隔一個取一個,由於步幅爲2 19 20 # 下面是從右到左取 21 print(a[4::-2]) # 索引3開始反着數,並且是隔一個取一個 22 print(a[-1::-1]) # 從右往左提取所有元素:第一個-1是表明最後一個元素,第二個-1表明步幅從右往左 23 24 # 取出的列表還能夠繼續賦一個變量,該變量的列表將與原列無關 25 b = a[4::-2] # b = ['王二', '張三', '小明'] 26 print(b) 27 print(b[1::-1]) 28 29 # 判斷某個元素是否在列表有如下三種方法 30 # .count 數這個元素在列表有幾個,若是是0的話就說明沒有。 31 # .index 根據內容查找對應的索引(下標)。 32 # print ('寶露' in a) 「寶露」是否在列表a裏面,在就輸出結果True,不在就輸出結果False。 33 # in用法的延伸:type(a) is list 判斷a是不是一個列表,是輸出True,否輸出False 34 35 # -----------------------------分割線------------------------------- 36 37 # 增長 38 39 # append 是追加,它會把增長的值放到列表的「最後一項」 40 a.append('寶露') # 在該列表最後一項加上「寶露」這個元素。括號裏面是所添加內容的值。 41 print(a[0:]) 42 43 # insert 是插入,能夠插入任意位置,找須要填寫對應索引值便可。 44 a.insert(3, '馬二') # 括號裏分別是新增位置的索引與新增的內容。 45 print(a[0:]) 46 47 # extend 增長列表進另一個列表(擴展列表) 48 ext_a = [1, 2, 3] 49 ext_b = [4, 5, 6] 50 ext_a.extend(ext_b) # 把ext_b列表增長到ext_a列表中了,可是並不影響ext_b 51 print(ext_a) 52 print(ext_b) 53 54 # -----------------------------分割線------------------------------- 55 56 # 修改 57 58 # 一個元素的修改: 59 a[3] = '馬大哈' # 先取出具體要修改的元素,而後直接賦值便可。好比這裏我要把「馬二」改爲「馬大哈」。 60 print(a[0:]) 61 62 # 多個元素的修改: 63 a[1:5:3] = ['小白', '大黑'] # 先取出要改的那幾個元素,由於是多個元素,因此仍是用中括號的列表格式把要改的元素寫進去。例如把「小剛」和「小李」分別改爲「小白」和「大黑」 64 print(a[0:]) 65 66 # -----------------------------分割線------------------------------- 67 68 # 刪除 69 70 # remove刪除:只能一個一個刪。是list(列表)的內置方法,所以經過例如a.remove就好了。 71 72 a.remove(a[3]) # remove不能切片,一次只能刪一個。 73 # a.remove('馬大哈') 也能夠寫成這樣進行刪除。 74 print(a) 75 76 77 # pop刪除:括號裏面直接跟索引就能夠刪除。不加索引默認刪除列表最後一個元素。可是pop能夠將刪掉的結果保留再進行賦值。 78 # a.pop(1) #這串字符表示刪除了「小白」(索引是1) 79 # 而後被刪除的「小白」的值能夠繼續返回,能被賦值到新的變量,能夠繼續被使用。以下: 80 b = a.pop(1) # 之因此能夠賦值給變量b,是由於pop是有return(返回值)的,它比較特殊 81 print(a) 82 print(b) 83 84 # del刪除:它啥都能刪除。 85 del a[2:4] # 刪除「大黑」和「王二」 86 print(a) 87 88 89 # -----------------------------分割線------------------------------- 90 91 # ______________________________________下面是新列表案例 92 93 # count 94 # count 比例有一個列表,count能夠計算出某個元素在該列表中出現的次數 95 ex_count = ['王二', '三胖', '二狗', '王二', '三胖'].count('王二') # 列表.count(此處爲要數的對象)。數的數量能夠賦值一個變量,而後print。 96 print(ex_count) 97 98 # len 99 # 經過len能夠查找列表長度,就是列表中全部元素數量! 100 101 print(len(a)) 102 103 104 # index 注意:若是列表中有好幾個相同的元素,取能取相同元素中第一個的索引。 105 # index 經過具體元素找索引,以前是經過索引找具體元素 106 a.index('小明') # 括號裏是具體要找的元素內容 107 print(a.index('小明')) # 輸出索引值(下標) 108 109 110 # reverse 111 # reverse 正序或倒序進行排序 112 a.reverse() 113 print(a) 114 115 116 # sort 117 # sort 對數字進行排序 118 ex_num = [7, 8, 8, 5, 1, 7, 3, 8] 119 ex_num.sort() # 括號 120 print(ex_num) 121 122 # sort 對字符串進行排序 ,按ASCII碼的順序排列,由於在ASCII碼中,每個字符都有一個對應的編號。 123 a.sort() 124 print(a)
元組:
1 # __ author:"#Cheng" 2 # date:2018-02-13 3 4 # tuple元組 能夠理解爲只讀列表,不能修改。跟列表的區別就是----元組是小括號,列表是中括號。 5 tup_1 = () # 空元組 6 tup_2 = ('小程', '小馬', '小李', ) # 後面必定要加逗號,加逗號纔會被認爲是元組。 7 8 print(tup_2[1])
字典:
1 # __author:"Cheng" 2 # date:2018/2/15 3 4 # Dictionary 字典 :1.無序 2.鍵惟一 5 # 字典是無序存儲,所以也沒有位置關係,與列表相比,它沒有位置和索引 6 7 # 不可變類型:整形、字符串、元組 8 # 可變類型:列表、字典 9 10 11 12 # 建立字典 13 14 15 # 下面是建立字典 。字典是可修改的,可是它的鍵必需要存不可修改的元素!不然程序會報錯。 16 dic1 = {'name':'寶露', 'age':27, 'sex':'male', 'hobby':'學習', 'is_goodboy':True } # 鍵值對裏的值存什麼均可以。字典用大括號建立,裏面是一組一組的鍵值對,左邊是鍵,右邊是值。 17 dic2 = dict((('name','寶露'),)) # 不經常使用。上面是第一種建立方式,這是第二種建立字典的方式。 18 print(dic1) # 輸出的結果是無序的,並不必定會按照上面的順序輸出。 19 print(dic2) 20 21 # 查1 經過鍵查值 22 print(dic1['hobby']) # 查字典的值用中括號,與列表相似,可是裏面必須是鍵,而不是索引。 23 24 # 查2 keys查字典裏所有的鍵 25 print(dic1.keys()) # 它所輸出的是dict_keys(['name', 'age', 'sex', 'hobby', 'is_goodboy']),是新的數據類型,並非列表。 26 list(dic1.keys()) # 若是想把它們做爲列表使用,能夠用list把它們轉換爲list列表。 27 print(list(dic1.keys())) # 讓咱們輸出看一下轉換成列表之後是啥樣兒吧。 28 29 # 查3 values查字典裏所有的值 30 print(dic1.values()) # 它所輸出的是dict_values(['寶露', 27, 'male', '學習', True]),是新的數據類型,並非列表。 31 list(dic1.values()) # 若是想把它們做爲列表使用,能夠用list把它們轉換爲list列表。 32 print(list(dic1.values())) # 讓咱們輸出看一下轉換成列表之後是啥樣兒吧。 33 34 35 # 查4 items查字典裏所有的鍵值對 36 print(dic1.items()) # 把你字典所有的鍵值對以元組的方式輸出。 37 print('查4') # 若是想把它們做爲列表使用,請看上面的方法吧,它是dict_items... 38 39 40 41 # 增長字典 42 43 # 增長字典,方法一: 44 dic_add = {'Monday':'上班'} # 建立一個dic_add的字典 45 print(dic_add) # 輸出字典 46 dic_add['時間'] = '上午9:00' # 新增一個鍵值對 47 print(dic_add) # 查看新增後的字典 48 49 # 增長字典,方法二: 50 # setdefault 是有返回值的! 51 # 若是已經有了重名鍵,那麼就不會改動,而且返回原鍵的值。若是沒有,那麼將增長鍵值對,返回新增的值。 52 dic_add.setdefault('下班時間', '下午5:00') # setdefault是字典自帶的對象,鍵值分別用逗號隔開,並非冒號哦。 53 print(dic_add) # 若是鍵名與現有鍵名重複,那麼將不起做用,不會對如今有鍵的值進行修改而且也不會增長。 54 55 56 57 # 修改字典 58 # 把鍵取出來,直接賦值就好了,跟列表的修改方式同樣。只不過列表是經過索引改,字典是經過鍵來改。 59 60 # 修改方式一: 61 dic_change = {'週一天氣':'晴朗'} # 建立字典 62 print(dic_change) # 輸出剛剛建立的字典 63 dic_change['週一天氣'] = '小雨夾雪' # 根據鍵,修改值 64 print(dic_change) # 輸出查看 65 66 67 # 修改方式二:update 68 # 將一個字典內容所有加到另一個字典,鍵重複的話將舊值將被覆蓋 69 dic_change_1 = {'生活':'工做', '努力':'拼搏'} 70 dic_change_2 = {'2018':'加油', '努力':'奮鬥'} 71 dic_change_1.update(dic_change_2) # 把dic_change_2 裏的內容,所有加到dic_change_1裏面去。誰在第一個誰是老大。 72 print(dic_change_1) 73 74 75 76 # 刪除 77 # del 字典 : 刪除整個字典。 78 79 # 刪除方法一 del: 80 # del 輸入鍵,刪除一組鍵值對 81 dic_del = {'夢想1':'理想1', '回憶1':'青春1', '消逝1':'光陰1'} 82 print(dic_del) 83 del dic_del['夢想1'] 84 print(dic_del) 85 86 # 刪除方法二 pop 有返回值,不返回鍵,只返回值: 87 # 列表裏的pop經過索引刪除,字典經過鍵刪除。 88 dic_del_1 = {'夢想3':'理想3', '回憶3':'青春3', '消逝3':'光陰3'} 89 print(dic_del_1) 90 re_test = dic_del_1.pop('消逝3') 91 print(re_test) # 返回的是值,而不是鍵,也不是鍵值對 92 print(dic_del_1) 93 94 95 # 刪除方法三 popitem 96 # popitem 隨機刪除並以元組方式返回值 97 dic_del_a = {'夢想a':'理想a', '回憶a':'青春a', '消逝a':'光陰a'} 98 print(dic_del_a) 99 re_test_a = dic_del_a.popitem() 100 print(re_test_a) # 返回隨機刪除的鍵值對 101 print(dic_del_a) # 看看如今的字典 102 103 104 # 刪除方法四 clear 清空字典: 105 # clear 清空字典,變成一個空字典,可是所賦值的變量還在 106 dic_del_2 = {'夢想2':'理想2', '回憶2':'青春2', '消逝2':'光陰2'} 107 print(dic_del_2) 108 dic_del_2.clear() 109 print(dic_del_2) 110 111 112 113 114 # __________________________________其它操做: 115 116 # 建立值都是同樣的字典 117 # 弊端:值是單個元素修改就沒關係,若是值是一個列表,當修改這個對應字典鍵的列表中的某個索引對應的內容時,把把其它鍵值對的值(列表)也一塊兒替換掉。 118 dic_new = dict.fromkeys(['小芳', '小麗', '小美'], '女') # 括號裏面的逗號左邊是列表(至關於不一樣的鍵),右邊至關於值。左邊列表裏的鍵都對應相同的值。 119 print(dic_new) # 返回一個字典,它們的鍵不一樣,可是值相同。 120 121 122 # 字典的嵌套 123 info_stu = {'小張':{'age':23, 'sex':'男', 'hobby':'讀書'}, 124 '小李':{'age':19, 'sex':'女', 'hobby':'看電影'}, 125 '小王':{'age':29, 'sex':'男', 'hobby':'游泳'}, 126 '小孟':{'age':27, 'sex':'女', 'hobby':'跑步'}, 127 '小丁':{'age':22, 'sex':'男', 'hobby':'旅遊'} 128 } 129 130 print('小張', info_stu['小張']) # 打印小張信息 131 print(info_stu['小張']['hobby']) # 打印小張愛好 132 133 134 135 136 # sorted 字典的排序 137 # 根據鍵進行排序 若是是數字就由小到大,若是是字符串,就按照ASCII碼排序 138 dic_paixu = {6:'520', 8:'6', 3:'晚餐'} 139 print(sorted(dic_paixu)) # 對鍵進行排序 140 print(sorted(dic_paixu.items())) # 對鍵值對進行排序,至關於對鍵進行排序,跟上面同樣 141 print(sorted(dic_paixu.values())) # 對值進行排序 142 143 144 145 146 # 字典的遍歷 147 # 默認循環遍歷字典時,會默認循環遍歷裏的鍵 至關於dic.keys 148 dic_loop = {'小學':'拼音', '中學':'代數', '大學':'逃課'} # 輸出遍歷 鍵 149 for i in dic_loop: 150 print(i) 151 152 dic_loop = {'小學':'拼音', '中學':'代數', '大學':'逃課'} # 輸出遍歷 值 153 for i in dic_loop.values(): 154 print(i) 155 156 dic_loop = {'小學':'拼音', '中學':'代數', '大學':'逃課'} # 輸出遍歷 鍵值 (推薦) 157 for i in dic_loop: 158 print(i, dic_loop[i]) 159 160 dic_loop = {'小學':'拼音', '中學':'代數', '大學':'逃課'} # 輸出遍歷 鍵值 (items) 161 for i, v in dic_loop.items(): 162 print(i, v) 163