其实,更准确地说,索引和切片属于字符串的运算方法,[]和[ : ]都是运算符。

那么,除了索引和切片,字符串还有什么运算方法呢?

我先把字符串的运算方法列在下面:

运算符

作用

实例

+

字符串连接

a + b 输出结果:HelloWorld

*

重复输出字符串

a*2 输出结果:HelloHello

[]

字符串索引

a[1] 输出结果 e

[ : ]

字符串切片

a[1:4] 输出结果 ell

in

字符串中是否包含指定字符

'w' in a 输出结果 False

not in

字符串中是否不包含指定字符

'w' not in a 输出结果 True

r/R

原始字符串

print(r'He\\llo\nWo\trld')

print(R'He\\llo\nWo\trld')

%

格式化输出字符串

请参见后续章节内容。

上表第三列中的a和b,是我们即将赋值的两个变量。其中,a的值为“Hello”,b的值为“World”。为了表格的完整性,先把后面要讲的实例放在了上面,后面会逐一讲解。

1、字符串连接

Python中的字符串连接非常方便,就像我们做加法一样,a+b就得到了ab。类似的运算仅限于加法以及一会儿要讲的乘法,减法和除法都是不行的。。。

In [1]: a = 'Hello'
        b = 'World'

In [2]: a + b
Out[2]: 'HelloWorld'

In [3]: a + ' ' + b   # a + '空格' + b,变量和字符串可以混用
Out[3]: 'Hello World'

2、重复输出字符串

重复输出字符串类似于乘法,使用的符号也是*。*前面是要重复输出的内容,*后面是重复输出的次数。

In [4]: a * 3
Out[4]: HelloHelloHello'

In [5]: 'yes' * 5   # 不使用变量,直接重复字符串也可以
Out[5]: 'yesyesyesyesyes'

In [6]: (a + b) * 3   # 括号内先运算
Out[6]: 'HelloWorldHelloWorldHelloWorld'

3、字符串的索引


4、字符串的切片


5、字符串中是否包含指定字符

in和下面要讲的not in都是成员运算符。in是判断字符串中是否包含指定字符或者字符串。如果包含,返回True;如果不包含,返回FALSE。

True和FALSE属于布尔值,是在比较运算和判断语句中,用来代表结果的值。True代表真或者成立,False代表假或者不成立。

In [7]: 'w' in a
Out[7]: FALSE

In [8]: 'rl' in b
Out[8]: True

In [9]: a + b in 'HelloWorldHelloWorld'   # 先进行算数运算,再进行成员运算
Out[9]: True

6、字符串中是否不包含指定字符

not in是判断字符串中是否“不”包含指定字符或者字符串的。如果不包含,返回True;如果包含,返回FALSE。

In [10]: 'w' not in a
Out[10]: True

In [11]: 'rl' not in b
Out[11]: FALSE

In [12]: a + b not in 'HelloWorldHelloWorld'   # 先进行算数运算,再进行成员运算
Out[12]: FALSE

7、原始字符串

在《手把手陪您学Python》6——字符串的标识一文中,我们讲到了用反斜杠\代表的转义字符。如果在某种特殊的情况下,字符串中本身就有很多\或者\n之类的字符,但又不想让程序将其识别为转移字符,又该如何去做呢?

这时候,就需要用到这个原始字符串标识符了。只需要在字符串的前面放一个r或者R(大小写通用),打印时,字符串里的任何字符都只代表其本身,而不具有转义的功能。

In [13]: print('He\\llo\nWo\trld')
Out[13]: He\llo
         Wo  rld

In [14]: print(r'He\\llo\nWo\trld')
Out[14]: He\\llo\nWo\trld

In [15]: print(R'He\\llo\nWo\trld')
Out[15]: He\\llo\nWo\trld

8、格式化输出字符串

格式化输出是字符串非常有用的一个应用,但理解起来会稍微有些困难,而且目前也用不上,所以针对字符串的格式化输出方法,计划在以后单独写一篇文章,到时再与大家分享。

相对于字符串的索引和切片,字符串的运算可以说是非常简单了,后面要做的就是灵活地运用了。

下一篇,将会与大家分享与字符串有关的常见函数,敬请关注。

 

python字符串能进行运算吗 python中字符串运算_格式化输出