返回介绍

通常意义下的类型分类

发布于 2024-01-29 22:24:17 字数 844 浏览 0 评论 0 收藏 0

到现在,我们已经探索了第一个Python的集合对象——字符串,让我们暂停一下,来定义一些通常意义下的类型概念,这些概念对于今后我们学到的大多数类型来说都有效。对于内置类型,对于相同分类的类型有很多操作工作起来都是一样的,所以绝大多数的概念我们只需要定义一次。到现在只检查了数字和字符串,但是由于它们代表了Python中的三大类型分类中的两个,对于其他的类型你已经了解了足够多的内容。

同样分类的类型共享其操作集合

正像我们所学习的那样,字符串是不可改变的序列:它们不能在原处进行改变(不可变部分),并且它们是位置相关排序好的集合,可以通过偏移量读取(序列部分)。现在,本书中我们学到的所有的序列都可以使用本章中对于字符串的序列操作——合并、索引、迭代等。更正式的来说,在Python中有三个主要类型(以及操作)的分类:

数字(整数、浮点数、二进制、分数等)

支持加法和乘法等。

序列(字符串、列表、元组)

支持索引、分片和合并等。

映射(字典)

支持通过键的索引等。

集合是自成一体的一个分类(它们不会把键映射到值,并且没有逐位的排序顺序),我们还没有深入地学习映射(字典将会在下一章讨论)。但是我们遇到的很多其他类型都与数字和字符串类似。例如,对于任意的序列对象X和Y:

·X+Y将会创建一个包含了两个操作对象内容的新的序列对象。

·X*N将会创建一个包含操作对象X内容N份拷贝的新的序列对象。

换句话说,这些操作工作起来对于任意一种序列对象都一样,包括字符串、列表、元组以及用户定义的对象类型。唯一的区别就是,你得到的新的最终对象是根据操作对象X和Y来决定的——如果你合并的是列表,那么你将得到一个新的列表而不是字符串。索引、分片以及其他的序列操作对于所有的序列来说都是同样有效的,对象的类型将会告诉Python去执行什么样的任务。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文