想了解python的安装及运行的可以看慢步之前写的文章。

今天继续python编程基础内容,字符串类型数据。

python里面主要的数据类型是数值类型和字符串类型。计算机可以进行运算的是数值,字符串不能进行数学运算,像你在阅读的文字,可以理解为字符串的一种。简单来说,字符串就是“字符”。

字符串在python中的形式

它们可以用单引号(‘…’)或双引号(“…”)括起来。

用IDLE运行python

python print 输出字符串的字体字号 python如何输出字符串类型_python

在IDLE里输入a及'a'看看

python print 输出字符串的字体字号 python如何输出字符串类型_python字符串实例_02

输入a提示错误,最后一项是具体的错误信息:

命名错误:名字a未被定义。

a一般被当作变量名,直接输入就会出现这样的错误。

但'a'输入后没有提示出错,'a'就是一个字符串。

输出函数print()与转义字符

字符串,可以理解为文本文字,文字的作用就是输出的,或者输出到文本文件,或者输出在显示器。输出常用的是输出函数print()。将要输出的字符串放到函数括号内就可以进行输出。

顺便看看一个特殊的符号\ 反斜杠

python print 输出字符串的字体字号 python如何输出字符串类型_python_03

在使用print()时提示了两次语法错误。

看看第一字符串 'I'm Hero!' 原意是显示字符串I'm Hero! 但python理解为'I' 和后面部分代码m Hero!' 因为这里由单引号开始,python会将第2个单引号理解为字符串的结束。

在单引号字符串想要显示单引号,慢步用转义字符\ 反斜杠 才成功输出。转义字符\ 的作用就是在特殊字符前使用,可以实现特殊的显示功能。

第二次错误提示的是“异常的缩进”,因为慢步在复制代码时print前面多复制了一个空格。

再接下来,笔者用双引号作为字符串的外部标识,里面的单引号正常显示了。同理用单引号作为字符串标识,里面的双引号也可以显示。

字符串的换行显示

在上面的例子中,一个print()只输出一行内容。下面看看几个多行内容输出的例子

python print 输出字符串的字体字号 python如何输出字符串类型_单引号_04

print()函数括号内是常规的字符串时,会将字符串标识去掉,内容显示为一行。

第三个输出语句中多了转义字符\n,这个转义字符的作用是换行。

最后面两个输出语句括号内容为由三引号"""……"""标识,三引号标识的字符串可以直接换行输出。

通用的代码换行

假如你要写一条300个字符的python代码,你要阅读这个代码就会非常吃力。为解决这个问题,python提供了代码换行符\,(转义字符是反斜杠+一个字符产生显示效果,这里单独使用反斜杠)

python print 输出字符串的字体字号 python如何输出字符串类型_python字符串实例_05

蓝色为交互环境下python的输出部分。第1次无异常。第2次慢步加换行符\,提示错误。因为换行符\必须是最后一个字符,后面不能再存在任何字符。

图片最后两次输出,print(CC),最后一次异常:无效的语法。因为把关键词print截成两半,python同样是不能识别的。

可以这样理解换行符\

在任何一句代码中,你嫌它太长,你就可以用\符号作为本行代码的终止,换行继续编写,效果和无换行时完全一样。只是不能把关键语言词汇破坏。

字符串的乘与加,原字符输出

字符串也有乘和加,乘的效果是复制字符串的次数,加是字符串的连接。

python print 输出字符串的字体字号 python如何输出字符串类型_字符串_06

第1条,提示错误,因为慢步打中文,最后用中文引号收尾。python只认英文字符作为语法标识符。

乘是复制字符串,加是连接两个字符串。

慢步尝试写一个c,字符串内容为"电脑文件路径:C:\user",多次提示异常。考虑\u有特殊意义,在这里破坏了赋值=的语法。

用print输出"电脑文件路径:C:\user"提示异常,和上面一样,考虑\u有特殊意义。但在print函数中,在引号前加一个r,就可以原字符输出引号内字符串内容了。

特殊的字符串连接

有一种特殊的字符串连接方式,继续看例子。

python print 输出字符串的字体字号 python如何输出字符串类型_字符串_07

输入两个字符串,会自动连接为一个。但字符串变量和字符串不能自动连接,必须使用+等连接。在括号内,上下行的字符串也会自动连接。

字符串的索引及切片

字符串有个强大的功能,就是能够通过索引进行切片使用。

首先看看索引。

python print 输出字符串的字体字号 python如何输出字符串类型_python字符串实例_08

有个字符串变量f,为“我在学慢步python编程再来一行看看”,中括号内的就是字符串的索引号,字符串f的第0个元素为“我”,第1个元素为“在”……

中括号内为索引,索引从左往右从0开始递增。

在看看后面,可以从右往左使用索引,这时的索引号用负数表示。从-1开始,-2、-3递减。f[0]和发f[-0]都是我,因为-0还是0。

python print 输出字符串的字体字号 python如何输出字符串类型_字符串_09

如上图字符串“Python”,正序索引为0-5,6则超出字符串的索引长度。反序索引为-1到-6。

在索引的基础上,我们可以继续进行字符串的切片。

python print 输出字符串的字体字号 python如何输出字符串类型_python_10

如图,字符串切片由中括号内两个索引号决定切片范围。切[0:3],简单理解是从0号元素到3号元素,有没有发现?3号元素应该是“来”,但不在切片内。字符串切片就是这样,包括前面索引对应的元素,不包括后面的索引对应的元素。反序索引也一样。

切片的基本格式是 字符串[前索引号:后索引号] 两个索引号之间有英文冒号存在。

省略前索引号,默认包括后索引前所有字符串;省略后索引号,默认包括前索引前所有索引;省略前后索引,则切片包括所有字符串元素。

最后介绍一个长度函数len(),可以获得字符串内元素的数量。后面的列表长度也是可以通过len()获得的。

python print 输出字符串的字体字号 python如何输出字符串类型_python_11

继续看索引及切片。

一个10个元素的字符串(10个字符),索引10指向第11个字符,不存在,提示异常:out of range

索引及切片得到的结果可以作为一个字符串变量进行连接和复制,但不能被赋值修改。因为我们切片或者索引引用出来的是一个映射或者说是一个副本,“原件”是不动的。