<wbr id="wsjqy"></wbr>

          <form id="wsjqy"></form>
          <sub id="wsjqy"></sub>
          <nav id="wsjqy"><listing id="wsjqy"></listing></nav>
          更多課程 選擇中心


          Python培訓

          400-111-8989

          再次學習python標準數據類型

          • 發布:Python培訓
          • 來源:程序小員
          • 時間:2019-12-19 14:21

          標準數據類型

          number, string, list, tuple, set, dictionary.

          注意:當Python定義一個變量并賦初值的時候,這個變量就被創建出來,并且此處所說的類型不是變量的類型,變量不存在類型,就只是變量,這里所說的類型是創建的對象的類型,例如:

          number = 100 # 此處創建了一個int類實例對象,用變量number指向它

          其中的number數據類型,在Python3中包括 int, float, bool, complex(復數)

          復數的創建方式是調用complex函數

          例如:

          cpx = complex(5, 6)

          此處 cpx 的值為復數 (5+6j)

          標準數據類型中, 存在4個容器類型,分別是 set(集合), list(列表), tuple(元組), dictionary(字典)

          關于四種容器類型,在這里只是概述了:

          列表:

          定義:

          使用 [ ] 或者list() 例: a = [ ] / a = list()

          增長: 使用append(要添加到末尾的元素) ,insert(插入的位置,插入的元素), extend(要組合的新列表)

          縮減: pop(默認最后一個元素刪除,也可輸入索引),remove(根據值刪除)

          轉置: reverse() 列表頭尾反轉重新排列

          排序: sort()

          查找: index(value) 返回value第一次出現的索引,count(value) 返回value出現的次數, in 關鍵字,返回bool值 例如: a = [10, 20],那么 10 in a 會返回True

          計算: sum(), 計算列表中所有數據的總和, max(), min() 分別返回列表中元素最大,最小值

          合并: 加法 + 運算,合并兩個列表,返回新的列表, 乘法 * 復制 n 次,生成新列表

          大小: len(), 返回列表長度

          切片: list[start : end : sted] start 和 end 切割的區間,左開右閉, sted表示每次切割的步長

          元組:

          元組操作與列表類似,但是,元組是不可變類型(關于不可變類型,下文會有講)所以列表的 增長,縮減,排序,轉置函數都不能使用, 只能使用 + 和 * 合并或復制元組,切片功能也可以使用。這些能使用的功能最終都會返回一個新的元組!!原來的元組本身并沒有發生變化

          字典:

          定義: 使用 {} 或者 dict() ,例如:a = {} / a = dict()

          key 與 value : 列表與元組通過索引index來尋找值value, 而字典利用關鍵字 key 來尋找相對應的value,與c++數據結構中的哈希表類似,也與現實生活中的字典類似,注意: 字典的key值只能是不可變類型,而value可以是任意類型,甚至本身可以是一個字典。

          例子: bands = {“Marxes”: [“Moe”, “Curly”], “KK”: [True, “moon”] },前面一個是字符串+列表組合, 后面一個也是字符串+列表組合,但是后面的列表里面是bool類型和字符串類型的組合

          字典的增長/更新方法:

          1.直接添加,例如: student = {} , student[“name”] = “Tom”, student[“age”] = 20, 此處若是"age"存在,則更新,若是不存在,則是添加,“name” 同理。

          2. 在上一個例子 student 的基礎上, bar = {“course”: [“數學”, “英語”]}, 創建一個新的字典,然后 student.update(bar),則是將字典bar合并進入student, 也可以直接 student.update(friends = [“Mike”, “Alice”])。

          字典的刪除方法:

          1.pop(key) 刪除指定標簽和它的數據,把它的value值返回出來。

          2.popitem() 刪除隨機標簽和它的數據,并把它以元組方式返回出來。

          3.clear() 清空字典中的所有元素

          字典長度: len() # 所有的容器都可以使用len()來獲得長度

          訪問字典: keys() 返回字典中的所有關鍵字,即標簽, values() 返回字典中的所有value值, items() 將每個數據項表示為二元元組, 返回所有的數據項

          在字典下查找: in 操作,查找字典中是否含有某個關鍵字, 返回值是bool類型, in 與value 配合 “Tom” in student.values() 即可查找字典中的value值。 除此之外,in 操作還可以與keys() , items() 配合。

          集合:

          事先聲明: 集合與字典類似,如果說字典是key值與value值一對一對應的,那么集合就是只存在key值,注意: 這里的key依然是不可變類型,集合是一個標簽帶,并且這個標簽帶里的標簽不允許重復,會自動去重。

          創建集合: 使用{}或者set(), 并且,set()函數可以從其他序列容器轉換成集合,例如,元組,列表,字符串,放到set()的()中會轉換成集合。

          增長集合: 使用add()增加一個元素,或者使用update() 批量增加元素

          縮減集合:

          1.remove() / discard() 兩者都是刪除指定元素,不同之處在于當要刪除的元素不存在時, remove()會報錯而discard()不會。

          2.pop() 這個就有點古怪,它會刪除任意一個元素并且返回值,就是說,先斬后奏。

          3.clear() 清除所有的元素

          集合大小: 依然用len() 來獲取,你記好了嘛?

          訪問元素: in 操作對集合同樣適用喔,可以判斷某個元素是否在集合內, 或者適用迭代來實現訪問所有元素, for item in myset: 實現。

          集合運算: 敲黑板!這部分很厲害哦, 眾所周知我們數學上的集合可以進行各種運算,比如并,交等,在python中的set同樣可以哦!

          運算操作    示例

                        aset | bset

                        aset & bset

                        aset - bset

          關系判定: 當然集合的關系判定也是少不了的啦,一起來看看吧。

          關系            示例

          子集            aset <= bset

          真子集         aset < bset

          超集            aset >= bset

          真超集         aset > bset

          相等            aset == bset

          什么時候用集合呢?

          1.快速去除重復項:假如一個列表中有大量的重復,我們可以把列表放到集合里去,可以高效去重

          2.判斷元素是否在一組數據中,即使用 in 操作,in操作在集合中擁有比在列表中更好的性能。

          好啦,接下來我們談談可變類型和不可變類型。

          可變類型:列表,字典,集合

          不可變類型:整型,浮點型,字符串,邏輯值,元組

          根據我個人的理解,可變類型就是,數據本身變了,不可變類型就是,數據本身不會變,如果你對它進行操作,也只是在它的基礎上產生一個新的值再賦值給你的變量。

          舉栗子:

          a = “I’m handsome”

          a = a + “I think so”

          最終a的值會變成兩個之和,但是!!!注意了,"I’m handsome"這個字符串本身并沒有變,你只是把一個值和它加起來又賦值到了a身上而已

          再來:

          a = [1, 2, 3]

          a.append(4)

          這個時候,你就要注意,[1, 2, 3]這個列表本身已經變了,等于[1, 2, 3]它本身已經不存在了,變成了新的東西了。

          如果你理解了,那么這里面還有一個問題你必須知道,這也是很可能會犯的一個小錯誤,錯誤很微小,但是結果很致命!

          很多人喜歡把Python里的變量比作標簽,是貼在某個數據上的,這種比喻主要用來針對不可變類型,很形象生動,這里有個簡單的問題問大家:

          定義 num1 = 20, num2 = num1

          如果我們對num1進行操作, num1 += 10

          此時, num2 的值是什么?答案是,20,幾乎不用想

          這個時候你必須要注意了!! 我們說過數是不可變類型,那么對于可變類型呢?

          我們定義 lt1 = [10, 20] lt2 = lt1

          我們再對lt1進行操作 lt1.append(30)

          這個時候,我再問你, lt2 的值是什么?可能我這樣的態度已經讓你察覺到了

          沒錯,這個時候,lt2的值就不是原來的 [10, 20]了,它也隨lt1變化了!

          現在,lt2的值,同樣變成了[10, 20, 30]!

          在python中,如果幾個變量同時對應同一個可變類型的對象,那么任意一個變量對這個對象進行操作之后,其他所有變量的值同時進行改變!牢記這一點!

          免責聲明:內容和圖片源自網絡,版權歸原作者所有,如有侵犯您的原創版權請告知,我們將盡快刪除相關內容。

          預約申請免費試聽課

          填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

          上一篇:Python面向對象編程基礎知識
          下一篇:Python面向對象編程簡單講解

          Python中類的屬性有哪幾種

          Python語法你知道多少

          Python 中常見的配置文件寫法

          Python爬蟲可以做什么

          • 掃碼領取資料

            回復關鍵字:視頻資料

            免費領取 達內課程視頻學習資料

          • 視頻學習QQ群

            添加QQ群:1143617948

            免費領取達內課程視頻學習資料

          Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

          選擇城市和中心
          黑龍江省

          吉林省

          河北省

          湖南省

          貴州省

          云南省

          廣西省

          海南省

          网友自拍 偷拍 校园性爱青青草曰逼视屏老鸭窝国产偷自视频区视频 百度 好搜 搜狗
          <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>