国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 祁阳县| 同仁县| 镇雄县| 抚宁县| 石景山区| 若羌县| 金沙县| 天水市| 新津县| 十堰市| 大同县| 前郭尔| 清水河县| 石台县| 拜泉县| 府谷县| 广丰县| 郑州市| 兴隆县| 会宁县| 江阴市| 三台县| 故城县| 中牟县| 公主岭市| 中山市| 云安县| 江安县| 九寨沟县| 东乡族自治县| 麦盖提县| 共和县| 莱芜市| 井研县| 舞钢市| 沙湾县| 申扎县| 巴林右旗| 东乌| 康乐县| 南木林县|