Python常用的数据结构—字符串
字符串定义
所谓字符串,就是由零个或多个字符组成的有限序列。
在Python程序中,如果我们把单个或多个字符用单引号或者双引号包围起来,就可以表示一个字符串。字符串中的字符可以是特殊符号、英文字母、中文字符、日文的平假名或片假名、希腊字母、Emoji字符等。
s1 = 'hello, world!'
s2 = "你好,世界!"
print(s1, s2)
# 以三个双引号或单引号开头的字符串可以折行
s3 = '''
hello,
world!
'''
print(s3, end='')
提示:
end=''表示输出后不换行,即将默认的结束符\n(换行符)更换为''(空字符)。
转义字符和原始字符串
可以在字符串中使用\(反斜杠)来表示转义,即\后面的字符不再是它原来的意义,例如:\n不是代表反斜杠和字符n,而是表示换行;\t也不是代表反斜杠和字符t,而是表示制表符。所以如果字符串本身又包含了'、"、\这些特殊的字符,必须要通过\进行转义处理。例如要输出一个带单引号或反斜杠的字符串,需要用如下所示的方法。
s1 = '\'hello, world!\''
print(s1) # 'hello,world!'
s2 = '\\hello, world!\\'
print(s2) # \hello,world!\
Python中的字符串可以r或R开头,这种字符串被称为原始字符串,意思是字符串中的每个字符都是它本来的含义,没有所谓的转义字符。例如,在字符串'hello\n'中,\n表示换行;而在r'hello\n'中,\n不再表示换行,就是反斜杠和字符n。大家可以运行下面的代码,看看会输出什么。
# 字符串s1中\t是制表符,\n是换行符
s1 = '\time up \now'
print(s1) # \n会换行
# 字符串s2中没有转义字符,每个字符都是原始含义
s2 = r'\time up \now'
print(s2) # \time up \now
Python中还允许在\后面还可以跟一个八进制或者十六进制数来表示字符,例如\141和\x61都代表小写字母a,前者是八进制的表示法,后者是十六进制的表示法。另外一种表示字符的方式是在\u后面跟Unicode字符编码。
字符串的运算
python中可以使用+运算符来实现字符串的拼接,可以使用*运算符来重复一个字符串的内容,可以使用in和not in来判断一个字符串是否包含另外一个字符串,我们也可以用[]和[:]运算符从字符串取出某个字符或某些字符。
拼接和重复
下面使用+和*运算符来实现字符串的拼接和重复操作。
s1 = 'hello' + ' ' + 'world'
print(s1) # hello world
s2 = '!' * 3
print(s2)

本文详细介绍了Python中的字符串,包括定义、转义字符、原始字符串、字符串运算(如拼接、重复、比较)、成员运算、获取长度、索引与切片、循环遍历、字符串方法(如大小写转换、查找、格式化)以及编码和解码。通过实例展示了如何使用这些概念和操作。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



