字符串基础

未匹配的标注

从功能的角度,字符串能被用来代表任何可以被编码为文本或字节的东西。在文本领域,这包含了符号和单词(比如你的名字),被加载进内存的文本文件的内容,Internet地址,Python源码等等。字符串还能被用来表示用于媒体文件和网络传输的原始字节,还有在国际化程序中被使用的非ASCII Unicode文本的编码和解码形式。

你可能也已经使用过其他语言的字符串。Python的字符串起了和像C语言中的字符串数组一样的作用,但它们是比数组要稍微高一级层次的工具。不像在C中,Python字符串伴随着一套强大的处理工具。也不像C这种语言,Python对单个字符们没有不同的类型;相反,你只使用一个个字符组成的字符串。

严格说来,Python字符串被归类为不可变序列,意味着它们包含的字符串有一个从左到右的位置顺序且不能就地被更改。事实上,字符串是我们将学习的名为序列的更大的类的第一个代表。特别注意本章引入的序列操作,因为它们将适用于稍后探索的其它序列类型,如列表和元组。

表7-1预览了将在本章中讨论的常见字符串字面量和操作。空字符串被写作中间没有任何东西的一对引号(单或双),且有许多中编码字符串的方法。对处理操作来说,字符串支持表达式操作如连接(合并字符串)、切片(提取部分)、索引(通过偏移获取)等等。除了表达式,Python还提供了一套实现常见字符串特定任务的字符串方法,还有更高级文本处理任务如模式匹配的模块。本章后面将探索所有这些内容。image-20230226073432656

image-20230226073445976

除了表7-1的中字符串工具的核心集外,Python还支持使用标准库的re(为”regular expression“)模块(在第4章第36章中引入)来进行更高级的基于模式的字符串处理,甚至还有高级文本处理工具如XML解析器(在第37章中简要讨论)。然而,本书的范围主要集中在表7-1所代表的基础知识上。

为了讲述基础,本章以对字符串字面量形式和字符串表达式的概览开始,然后学习更高级工具如字符串方法和格式化。Python自带了许多字符串工具,这里不会全部学习;完整的工具史在Python库手册和参考书中已按时间顺序记载。这里的目标是探索足够常用的工具来给出一个代表性的样本;比如,这里不会学习实战中的方法,因为它们和我们将学习的内容非常类似。

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
讨论数量: 0
发起讨论 只看当前版本


暂无话题~