首页 > 代码库 > Python中字符串的操作

Python中字符串的操作

在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‘
>>> ‘<‘ + word*5 + ‘>‘‘  #你没看错,字符串的乘法,将字符串拷贝 n倍
<HelpAHelpAHelpAHelpAHelpA>‘

--------------------------------------------------------

切片操作有个有用的不变性: 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 "<stdin>", line 1, in ?IndexError: string index out of range


Python中字符串的操作