【转载】Python字符串操作之字符串分割与组合
1、 str.split():字符串分割函数
  通过指定分隔符对字符串进⾏切⽚,并返回分割后的字符串列表。
  语法:
  str.split(s, num)[n]
  参数说明:
  s:表⽰指定的分隔符,不写的话,默认是空格(’ ‘)。如果字符串中没有给定的分隔符时,则把整个字符串作为列表的⼀个元素返回。
  num:表⽰分割次数。如果指定了参数num,就会将字符串分割成num+1个⼦字符串,并且每⼀个⼦字符串可以赋给新的变量。
  [n]:表⽰选取第n个分⽚,n表⽰返回的list中元素下标,从0开始的。
2、 os.path.split():路径⽂件分割函数
  按照路径将⽂件名和路劲分割开,这⾥需要引⼊os包(import os)。
  语法:
  os.path.split(‘PATH’)
  参数说明:
  PATH指⼀个⽂件所在的绝对路径
  实例:
  1)split()函数常⽤的⼀些实例
#定义⼀个字符串str1
>>> str1 = "st"
#使⽤默认分隔符分割字符串str1
>>> print str1.split()
['st']
#指定分隔符为'.',进⾏分割字符串str1
>>> print str1.split('.')
['3w', 'gorly', 'test', 'com', 'cn']
#指定分隔符为'.',并且指定切割次数为0次
>>> print str1.split('.',0)
['st']
#指定分隔符为'.',并且指定切割次数为1次
>>> print str1.split('.',1)
['3w', 'st']
#指定分隔符为'.',并且指定切割次数为2次
>>> print str1.split('.',2)
['3w', 'gorly', 'test']
#这种分割等价于不指定分割次数str1.split('.')情况
>>> print str1.split('.',-1)
['3w', 'gorly', 'test', 'com', 'cn']
#指定分隔符为'.',并取序列下标为0的项
>>> print str1.split('.')[0]
3w
#指定分隔符为'.',并取序列下标为4的项
>>> print str1.split('.')[4]
cn
  2)统计字符串中出现的单词个数
>>> str2 = "This is the voa special english health report"
>>> list1 = str2.split('')
>>> list1
['This', 'is', 'the', 'voa', 'special', 'english', 'health', 'report']
>>> len(list1)
8
  3)、多次连续使⽤split()函数
    例如:将从html代码中提取⽹站地址
>>> s = '<a href="st">test</a>'
>>> print s.split('"')[1]
python教程字符串函数
>>> print s.split('"')[1].split('.')
['www', 'test', 'com']
  4)、使⽤split()函数去除⼀些特殊字符
#去掉字符串中的换⾏符\n
>>> str2 = '''hello
... world
... !'''
>>> str2.split('\n')
['hello', 'world', '!']
  5)、分割⽂件和其路劲
>>> import os
>>> print os.path.split("d:\")
('d:', '\')
>>> print os.path.split('d:/')
('d:/test', 'a.txt')
>>> print os.path.split('d:\\test\\a.txt')
('d:\\test', 'a.txt')
从上⾯的结果可以看出,如果我们路劲写成d:\,是得不到我们想要的结果,必须将再加⼀个’\’来转义第⼆个’\’才⾏,或者直接写成d:/这样。
3、 str.join(seq):将序列组合成字符串函数
  语法:s.join(seq)
  参数说明:
  s:给定的连接符
  seq:代表要连接的序列,如list、tuple、str的序列
实例:
  1)普通字符串的连接(只能针对字符或字符串进⾏连接)
>>> '-'.join("abdcd")
'a-b-d-c-d'
>>> list1 = ['a','b','c']
>>> ''.join(list1)
'abc'
  2)字符串分割函数和字符串组合函数组合使⽤的情况
>>> s = '<a href="st">test</a>'
>>> print s.split('"')[1]
>>> print s.split('"')[1].split('.')
['www', 'test', 'com']
>>> print'.'.join(s.split('"')[1].split('.'))

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。