字符串是 Python 中最常用的数据类型。我们可以使用引号( ' 或 " )来创建字符串。

创建字符串很简单,只要为变量分配一个值即可。例如:

var1 = 'Hello World!'var2 = "Nowcoder"

Python 访问字符串中的值

Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。

Python 访问子字符串,可以使用方括号来截取字符串,如下实例:

!/usr/bin/python3var1 = 'Hello World!'var2 = "Nowcoder"print ("var1[0]: ", var1[0])print ("var2[1:5]: ", var2[1:5])

以上实例执行结果:

var1[0]: Hvar2[1:5]: owco

Python 字符串更新

你可以截取字符串的一部分并与其他字段拼接,如下实例:

!/usr/bin/python3var1 = 'Hello World!'print ("已更新字符串 : ", var1[:6] + 'Nowcoder!')

以上实例执行结果

已更新字符串 : Hello Nowcoder!

Python转义字符

在需要在字符中使用特殊字符时,python用反斜杠()转义字符。如下表:


image.png

Python字符串运算符

下表实例变量a值为字符串 "Hello",b变量值为 "Python":


image.png

实例:

!/usr/bin/python3a = "Hello"b = "Python"print("a + b 输出结果:", a + b)print("a * 2 输出结果:", a * 2)print("a[1] 输出结果:", a[1])print("a[1:4] 输出结果:", a[1:4])if( "H" in a) : print("H 在变量 a 中")else : print("H 不在变量 a 中")if( "M" not in a) : print("M 不在变量 a 中")else : print("M 在变量 a 中")print (r'\n')print (R'\n')

以上实例输出结果为:

a + b 输出结果: HelloPythona * 2 输出结果: HelloHelloa[1] 输出结果: ea[1:4] 输出结果: ellH 在变量 a 中M 不在变量 a 中\n\n


image.png

Python字符串格式化

Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。

在 Python 中,字符串格式化使用与 C 中 sprintf 函数一样的语法。

!/usr/bin/python3print ("我叫 %s 今年 %d 岁!" % ('小明', 10))

以上实例输出结果:

我叫 小明 今年 10 岁!

python字符串格式化符号:


image.png

格式化操作符辅助指令:

Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。


image.png

Python三引号

python三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符。实例如下

!/usr/bin/python3para_str = """这是一个多行字符串的实例多行字符串可以使用制表符TAB ( \t )。也可以使用换行符 [ \n ]。"""print (para_str)

以上实例执行结果为:

这是一个多行字符串的实例多行字符串可以使用制表符TAB ( )。也可以使用换行符 [ ]。

三引号让程序员从引号和特殊字符串的泥潭里面解脱出来,自始至终保持一小块字符串的格式是所谓的WYSIWYG(所见即所得)格式的。

一个典型的用例是,当你需要一块HTML或者SQL时,这时用字符串组合,特殊字符串转义将会非常的繁琐。

errHTML = '''

Friends CGI Demo


ERROR


%s'''cursor.execute('''CREATE TABLE users ( login VARCHAR(8), uid INTEGER,prid INTEGER)''')


Unicode 字符串

在Python2中,普通字符串是以8位ASCII码进行存储的,而Unicode字符串则存储为16位unicode字符串,这样能够表示更多的字符集。使用的语法是在字符串前面加上前缀 u。

在Python3中,所有的字符串都是Unicode字符串。

Python 的字符串内建函数

Python 的字符串常用内建函数如下:


image.png