Python中字符串基础知识

1 单引号字符串以及对引号转义
字符串可以按如下表示:
1.1 “Hello, world!”
1.2 “Let’s go!”
1.3 ‘“Hello, world!” she said’
1.4 ‘Hello, world!’
1.5 ‘Let’s go’
1.6 ““Hello, world!” she said”

2 拼接字符串
>>> "Let’s say " ‘“Hello, world!”’
‘Let’s say “Hello, world!”’

>>> "Hello, " + “world!”
‘Hello, world!’
>>> x = "Hello, "
>>> y = “world!”
>>> x + y
‘Hello, world!’

3 字符串表示 str 和 repr
>>> “Hello, world!”
‘Hello, world!’
>>> print(“Hello, world!”)
Hello, world!

>>> “Hello,\nworld!”
‘Hello,\nworld!’
>>> print(“Hello,\nworld!”)
Hello,
world!

通过两种不同的机制将值转换成了字符串。你可通过使用函数str和repr①直接使用这两种机制。使用str能以合理的方式将值转换为用户能够看懂的字符串。例如,尽可能将特殊字符编码转换为相应的字符。然而,使用repr时,通常会获得值的合法Python表达式表示。
>>> print(repr(“Hello,\nworld!”))
‘Hello,\nworld!’
>>> print(str(“Hello,\nworld!”))
Hello,
world!

4 长字符串、原始字符串和字节
有一些独特而有用的字符串表示方式。例如,有一种独特的语法可用于表示包含换行符或反斜杠的字符串( 长字符串和原始字符串)。对于包含特殊符号的字符串, Python 2还提供了一种专用的表示语法,结果为Unicode字符串。这种语法现在依然管用,但是多余,因为在Python 3中,所有的字符串都是Unicode字符串。Python 3还引入了一种新语法,用于表示大致相当于老式字符串的字节对象。你将看到,在处理Unicode编码方面,这种对象依然扮演着重要的角色。
4.1 长字符串
要表示很长的字符串(跨越多行的字符串),可使用三引号(而不是普通引号)。
print(’’‘This is a very long string. It continues here.
And it’s not over yet. “Hello, world!”
Still here.’’’)
还可使用三个双引号,如""“like this”""。请注意,这让解释器能够识别表示字符串开始
和结束位置的引号,因此字符串本身可包含单引号和双引号,无需使用反斜杠进行转义。

常规字符串也可横跨多行。只要在行尾加上反斜杠,反斜杠和换行符将被转义,即被忽
略。例如,如果编写如下代码:
print(“Hello, \ world!”)
它将打印Hello, world!。这种处理手法也适用于表达式和语句。
>>> 1 + 2 +
4 + 5
12
>>> print
(‘Hello, world’)
Hello, world

4.2 原始字符串
原始字符串不以特殊方式处理反斜杠,因此在有些情况下很有用②。在常规字符串中,反斜杠扮演着特殊角色:它对字符进行转义,让你能够在字符串中包含原本无法包含的字符。例如,
>>> print(‘C:\nowhere’)
C:\nowhere

>>> print(r’C:\Program Files\fnord\foo\bar\baz\frozz\bozz’)
C:\Program Files\fnord\foo\bar\baz\frozz\bozz

>>> print(r’Let’s go!’)
Let’s go!

>>> print(r"This is illegal")
SyntaxError: EOL while scanning string literal

>>> print(r’C:\Program Files\foo\bar’ ‘\’)
C:\Program Files\foo\bar\

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值