20 - 常见内置数据类型

Python 常见内置数据类型

在Python中,常用的类型是这些:

Python 中查看数据类型的函数(function)为type()

>>>text = "Is test a string type object?"
>>>print(type(text))
<class 'str'>

Python 中常看内置方法(build-in method)的函数为dir()

>>>dir(text)[0:5] # 笔者为了节约空间,只打印了前5个方法
['__add__', '__class__', '__contains__', '__delattr__', '__dir__']
>>># dir() 还可以查看很多东西,如模组的方法
>>>import time
>>>dir(time)[0:10]
['_STRUCT_TM_ITEMS', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'altzone', 'asctime', 'ctime', 'daylight']

Python 中与类型相关的常见概念

  • 一个对象是否可变(mutable)

    一些对象的值在对象被创建后是不能再更改的,这类对象被称为不可变对象(immutable objects)

    一些对象的值在被创建后任可被修改,这类对象被称为可变对象(mutable obejcts)

  • 一个对象是否可迭代(iterable)

    如果一个对象能够逐一返回其成员项,那么这个对象就是可迭代的(iterable),也叫做可遍历(traversal)的。

    python 中,一个可迭代对象需要满足下述条件:

    • __iter__()__getitem__ 方法,该对象可逐一返回其成员项。
  • 一个对象是否可哈希(hashable)

    一个对象的哈希值(hash value)如果在其生命周期内绝不改变,并可以同其他对象进行比较,就被称为可哈希(hashable)

    python 中,一个可哈希对象需要满足下述三个条件:

    1. __hash__() 方法,该对象可计算哈希值。

    2. __eq__() 方法,该对象可以通其他对象进行比较。

    3. 该对象为 不可变对象,该对象的哈希值在其生命周期内绝不改变。

Note: 对象的方法可通过 dir() 查看


ref:
Python 文档:内置类型(Build-in Types)
Python 文档:数据模型 - 对象、值与类型
Python 文档:术语对照表 - 可哈希

posted @ 2024-02-19 11:03  总之先找时光机!  阅读(38)  评论(0编辑  收藏  举报