python中的sequence(序列)

摘要

這篇文章主要是爲了讓本身記住字典不是序列,python中序列的類型html

序列化的定義

有個朋友問我,什麼是序列化,我瞬間懵了,而後查了一下,發現廖雪峯老師給出了一個很舒服的解釋:
  序列化:咱們把變量從內存中變成可存儲或傳輸的過程稱之爲序列化,在Python中叫pickling,在其餘語言中也被稱之爲serialization,marshalling,flattening等等,都是一個意思。
  反序列化:反過來,把變量內容從序列化的對象從新讀到內存裏稱之爲反序列化,即unpickling。python

從概念能夠得出,字典確定不是序列,否則就能夠直接寫入文件存儲了。翻譯

python中sequence(序列)

這是官方文檔中的解釋,對應的連接地址點這兒code

翻譯過來大概意思就是:
一個可迭代對象,它支持經過__getitem__()特殊方法使用整數索引高效地訪問元素,並定義了一個__len__()方法,該方法返回序列的長度。一些內置的序列類型是list、str、tuple和bytes。注意,dict也支持__getitem__()和__len__(),但它被認爲是一個映射,而不是一個序列,由於查找使用任意不可變鍵,而不是整數。
htm

collections.abc.Sequence抽象基類定義了一個比__getitem__()和__len__()更豐富的接口,增長了count(),index(),__contains__(),和__reversed__()。能夠使用register()顯式註冊實現此擴展接口的類型。對象

相關文章
相關標籤/搜索