Python数据类型字符串的几种表示形式
Python数据类型字符串的几种表示形式
字符串用于表示文本数据。字符串中的字符可以是 ASCII字 符、各种符号以及各种 Unicode 字符。字符串属于不可变序列,不能直接修改字符串,不能在原处修改。字符串中的字符按照从左到右的顺序,具有位置顺序支持索引、分片等操作。
字符串常量
Python 字符串常量可用下列多种方法表示。
单引号: 'a'、'123'、'abc'
双引号:"a"、"123"、" abc "。
3个单引号或3对双引号:'" Python code "'、""" Python string """,三引号字符串可以包含多行字符串,可以分多行表示。
带 r 或 R 前缀的 Raw 字串:字符串内转义符不显示不起作用,只作为字符显示。
r 'abc\n123'、 R'abc\n123'。
带 u 或 U 前缀的 Unicode 字符串:u'asdf' 、 U'asdf '。u"字符串中有中文"
前缀u表示该字符串是unicode编码,用在含有中文字符的字符串前,防止因为编码问题,导致中文出现乱码。另外一般要在文件开头标明编码方式采用utf8。
Python3中,所有字符串默认字符串都是 str 类型的对象,可用内置的 str 函数来创建 str 字符串对象,用来转成字符串。例如:
> Pstr(123)
> x #用数字创建字符串对象
"123"
> typet(x )
< class ' str > #测试字符串对象类型
1.单引号与双引号 ,在表示字符串常量时,单引号和双引号没有区别,可相互嵌套。变量表示只显示外侧引号,内侧引号只作为字符显示。输出显示不显示外侧引号。
>>'123" abe '
'123" abe '
>>"I23' abc "
"123' abe"
>print('123" abe ',"123' abe ")
123" abc 123' abc
在交互模式下,直接显示字符串时,默认用单引号表示。如果字符串中有单引号,则
用双引号表示。注意,字符串打印时,不会显示用来字符串头尾用来表示字符串的单引号或双引号。
2.三引号:
三引号通常用于表示多行字符串(也称块字符)。例如:
> x =""" This is
a Python
multiline string ."""
>>> x
This is\n\ta Python multiline string.
> > print ( x )
This is
a Python
multiline string.
注意交互模式下,直接显示时,字符串中的各种控制字符以转义字符显示,与打印格式是有所区别。
三引号的另一种作用是作为文档注释,被三引号包含的代码块作为注释,在执行时被忽略不被执行,为阅读代码提供方便标识。放在句首。只在注释前端标三对引号,多行显示,末尾加三对引号。例:
"""这是三引号字符
串注释"""
3.转义字符:
转义字符用于表示一些不能直接输入的各种特殊字符。 Python 用常用转义字符表示。
4. Raw字特串如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀 r,表示这是一个 raw 字符串,里面的字符就不需要转义了。在 Raw 字符串中, Python 不会解析其中的转义字符。