在python中字符串的包围的引号有三种,单引号,双引号,三引号,其中,单引号和双引号完全相同,在python中单引号也可完成转义工作
>>>print('doesn\'t \n it?')
doesn't
it?
但经常性的,一般使用 单双引号+转义更为普遍
>>>print("doesn't \n it?")
doesn't
it?
三引号的使用,三引号(三个单引号或者三个双引号)用来座位注释,文档说明,类描述,用于比较广泛,他可以包含单引号,双引号,换行时不再需要\n
>>>print ("""Usage: thingy [OPTIONS] -h
Display this usage message -H
hostname Hostname to connect to
""")
Usage: thingy [OPTIONS]
-h Display this usage message
-H hostname Hostname to connect to
-------------------------------------------------------------------------------
上面说的是字符串的定义方法,在python2.7中,字符串的编码转换符号 'r','u'
r 用来防止 \n,\r,\t等被转移
u 用来将文本转为 Unicode字符,在python2.7中字符编码不是unicode
在python3.x之后,统一编码为unicode字符,所以 u被废弃了
--------------------------------------------------------------------------
字符串的连接
在python中字符串的连接有2中,一种是 相邻字符串间使用 空格,一种是使用 +好,后者功能更加完善,推荐使用后者
>>> word = 'Help' + 'A'
word'HelpA'
>>> ''' #你没看错,字符串的乘法,将字符串拷贝 n倍
'
--------------------------------------------------------
切片操作有个有用的不变性:s[:i] + s[i:]等于s。
切片很简单,特别要指出的是,python会自动进行范围检索,但不可超范围取值
>>> word='help'+'A'
>>> word[1:100]
'elpA'
>>>
word[10:]
''
>>> word[2:1]
''
>>> word[-100:]
'HelpA'
超范围取值会触发错误
>>> word[-10]
# errorTraceback (most recent call last):
File "", line 1, in ?IndexError: string index out of range