当前位置:   article > 正文

python内置的序列数据类型包括_____Python3内置类型有哪些?

python中内置的序列数据类型有

摘要:Python3目前已经成为主流,和版本2天壤之别,关于Python3的内置类型你了解吗?

本文将专注于解释器支持的内置类型,基于版本3.9.1进行讲解。

内置的主要类型是numerics、sequences、mappings、classes、instances、exceptions。

值得说明的是,在Python中真值设定为1或True,假值设定为以下情况:

None和False

任何数字类型的0

空序列或集合

本文将用type函数来测试数据类型。

Numeric Types(数字类型)

int(整形)

整形我们很小就接触过,自然数这个概念应该小学的时候就明白了。而整数包含了自然数,不但有正整数和零,还有负整数。Python中的int类型就是整数类型。

8162b8edb3dc7f068aa6a4703beeb4ff.png

float(浮点类型)

从上图可以发现,1.1并不是整数,没错,那么返回的float类型是什么呢?这个在Python中成为浮点数,浮点数可以这样理解,就是带了小数点的数,同样分为正、0、负这三个区间。

ee7d3b731dfd1951347e1d58fc1cd99d.png

complex(复数类型)

学基础数学的时候,我们学数这一章的时候,不但有实数还有复数对吧。无论是int还是float都只是实数,那么作为一门编程语言是用来解决现实问题的。如果都不能准确描述现实问题,这门语言肯定设计有缺陷。Python中用j或者J来表示复数,不过新手暂时不用接触复数,这个需要一点数学基础去理解。

Iterator Types(迭代类型)

迭代是Python比较强大的功能之一,内置函数iter()用来获取迭代对象,而内置方法__iter__()和__next__()用来生成可迭代的类型。

这里用一个例子来讲解,方便理解。

559eaaf3b09d458ff141b28af7ad4d69.png

可以看见,如果我们自定义一个类,里面没有包含__iter__()和__next__()那么这个对象不可迭代。而系统中有部分是可以迭代的类,我这里用一个列表做示范,让大家明白迭代的意义。

4a432afa0621a05faa2fab77956ce73c.png

Sequence Types(序列类型)

6d099e6c532480f5a1b1d6655e6e3877.png

list(列表)

通俗的讲,列表就是一个可变顺序的集合。

tuple(元组)

既然有了列表,为何还需要元组这个概念呢?元组和列表不都是一个集合吗?主要区别在于元组不可修改,用于不可变的集合。无论是元组还是列表,里面的元素都可以重复,而真正的集合是不可以重复的!

5cfe08ee31b120114ed552a5ae39cb3e.png

range(范围)

至于range就是在特定的情况下使用,因为它只代表了一个数字序列,配合循环使用。range里面只能填充数字,否则就会报错。

61af0b109c40f46c92af02b6717fdab4.png

Text Sequence Type(文本序列类型)

说字符串可能大家更为方便理解,也就是一段字符组成的序列。在Python中用str表示。编码方式为:Unicode,支持双引号、单引号和单双引号混合使用。

Binary Sequence Types(二进制序列类型)

bytes和bytearray作为二进制数据的基本存储单位,属于字节数据。只能存储ASCII字符,不在ASCII范围内的需要进行转义。区别在于bytearray可以修改,而bytes是不可变序列。将字符串转换为bytes只需要在字符串前加一个b,转换成bytearray则需要使用bytearray()这个函数。二进制序列类型还有一个memoryview,作为新手暂时不用去了解关于内存的操作。

00986d2267a59c95ec286576623daba4.png

set和frozenset都是集合的表现形式,把集合和上文的序列类型区分开来,主要是不可重复性。集合都是可迭代的,可以获取iter对象。集合用{}来表示,序列类型都可以可以通过set()函数来进行转换成集合,自动删除重复的,值得注意的是字典类型转换后的集合只有key,没有value。至于fronzenset和set的差别就是它不可变。

a3c6baa4f6f1a034259b6a140814465d.png

大家前面应该会很纳闷,为什么字典类型dict没有在序列类型里面?因为dict在python中属于映射类型,也是唯一的映射类型。字典是键值用冒号配对的组合,由逗号分割。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/569773
推荐阅读
相关标签
  

闽ICP备14008679号