国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

Python的數據類型總結

2019-11-14 17:03:58
字體:
來源:轉載
供稿:網友

原地可變類型和不可變類型

原地不可變類型又叫可哈希(hashable)類型,原地可變類型又叫不可哈希類型。

原地不可變類型:

  • 數字類型:int, float, decimal.Decimal, fractions.Fraction, complex
  • 字符串類型:str, bytes
  • tuple
  • frozenset
  • 布爾類型:True, False
  • None

原地可變類型:

  • list
  • dict
  • set

如何實際檢驗是否原地可變

hash還是會返回原地不可變類型的hash值,如果對一個原地可變的類型調用次函數,那么會返回TypeError。
只有可以hash的類型才可以作為dict的鍵。
只有可以hash的類型才可以放入set中,所以set本身不可以嵌套存放在set中。
舉例說明:

>>> hash(b'aaa')6904179387427091653>>> hash(bytearray(b'aaa'))Traceback (most recent call last):  File "<stdin>", line 1, in <module>TypeError: unhashable type: 'bytearray'>>> hash(frozenset({1,2,3}))-7699079583225461316>>> hash({1,2,3})Traceback (most recent call last):  File "<stdin>", line 1, in <module>TypeError: unhashable type: 'set'

如何實際檢驗操作是否是原地變化。

內置函數id()會返回一個對象在內存中實際的存放地址。

>>> L=[1]>>> id(L)49689480>>> L.append(2)>>> id(L)49689480    #在原地修改,所以可以看到存放地址沒有發(fā)生改變。>>> s='aa'>>> id(s)47072456>>> s+='bb'>>> id(s)49700008    #由于不可以在原地修改,所以當字符串變動后,新開辟了一個內存地址進行存放。>>>

數據保存是否有序

有序的數據類型

有序的數據類型稱為序列,支持索引、分片、加法、乘法、計算長度、比較大小操作。
比較時會依次比較每個元素的大小,如果依次比較時發(fā)現類型不相同會跳出錯誤。

  • list
  • tuple
  • str
  • bytes

無序的數據類型

  • dict
  • set

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 日照市| 嵊州市| 昔阳县| 思南县| 车险| 双流县| 娄烦县| 故城县| 阿尔山市| 甘南县| 闵行区| 渭南市| 楚雄市| 西贡区| 北票市| 双城市| 永清县| 类乌齐县| 冀州市| 墨江| 堆龙德庆县| 宁陕县| 九江县| 西城区| 和林格尔县| 田林县| 嘉定区| 沅陵县| 哈巴河县| 太仓市| 宝应县| 黄浦区| 虎林市| 财经| 盘山县| 元朗区| 明光市| 开江县| 施甸县| 彭水| 黄骅市|