Python中的字符串是一系列由引号或双引号括起来的字符:

"Roger"
'Roger'

你可以将字符串值赋给一个变量:

name = "Roger"

你可以使用+运算符连接两个字符串:

phrase = "Roger" + " is a good dog"

你可以使用+=来追加字符串:

name = "Roger"
name += " is a good dog"

print(name)  # Roger is a good dog

你可以使用str类构造函数将数字转换为字符串:

str(8)  # "8"

这对于将数字连接到字符串中非常重要:

print("Roger is " + str(8) + " years old")  # Roger is 8 years old

当使用一组3个引号将字符串括起来时,字符串可以是多行的:

print("""Roger is

 8

years old
""")



print('''
Roger is

 8

years old
''')

字符串有一组内置方法,例如:

  • isalpha():检查字符串是否只包含字符且不为空
  • isalnum():检查字符串是否包含字符或数字且不为空
  • isdecimal():检查字符串是否包含数字且不为空
  • lower():获取字符串的小写版本
  • islower():检查字符串是否为小写
  • upper():获取字符串的大写版本
  • isupper():检查字符串是否为大写
  • title():获取字符串的首字母大写版本
  • startsswith():检查字符串是否以特定子字符串开头
  • endswith():检查字符串是否以特定子字符串结尾
  • replace():替换字符串的一部分
  • split():使用特定字符分割字符串
  • strip():修剪字符串中的空白字符
  • join():将新字符附加到字符串
  • find():查找子字符串的位置

还有许多其他方法。

这些方法都不会改变原始字符串,而是返回一个新的修改过的字符串。例如:

name = "Roger"
print(name.lower())  # "roger"
print(name)  # "Roger"

你也可以使用一些全局函数来处理字符串。

特别是我想到了len()函数,它可以给出字符串的长度:

name = "Roger"
print(len(name))  # 5

in运算符让你检查一个字符串是否包含子字符串:

name = "Roger"
print("ger" in name)  # True

转义是一种向字符串中添加特殊字符的方法。

例如,如何在被双引号包裹的字符串中添加一个双引号?

name = "Roger"

"Ro"Ger"不起作用,因为Python会认为字符串在"Ro"结束。

正确的方法是使用\反斜杠字符转义字符串中的双引号:

name = "Ro\"ger"

这也适用于单引号\',以及用于制表符的特殊格式字符\t,用于换行的特殊格式字符\n和表示反斜杠的特殊格式字符\\

给定一个字符串,你可以使用方括号获取特定的字符,以及给定其索引从0开始:

name = "Roger"
name[0]  # 'R'
name[1]  # 'o'
name[2]  # 'g'

使用负数将从末尾开始计数:

name = "Roger"
name[-1]  # "r"

你还可以使用范围,我们称之为切片

name = "Roger"
name[0:2]  # "Ro"
name[:2]  # "Ro"
name[2:]  # "ger"