Python字符串/文件路径分割

刘超 1月前 ⋅ 246 阅读   编辑

目录
  1、字符串分割
  2、文件路径分割

一、str.split():字符串分割函数

  说明:通过指定分隔符对字符串进行切片,并返回分割后的字符串列表。
  语法:str.split(s, num)[n]
  参数说明:
  s:表示指定的分隔符,不写的话,默认是空格(’ ‘)。如果字符串中没有给定的分隔符时,则把整个字符串作为列表的一个元素返回。
  num:表示分割次数。如果指定了参数num,就会将字符串分割成num+1个子字符串,并且每一个子字符串可以赋给新的变量。
  [n]:表示选取第n个分片,n表示返回的list中元素下标,从0开始的。
  示例:

# 定义一个字符串str1
>>> str1 = "3w.gorly.test.com.cn"
#使用默认分隔符分割字符串str1
>>> print str1.split()
['3w.gorly.test.com.cn']

#指定分隔符为'.',进行分割字符串str1
>>> print str1.split('.')
['3w', 'gorly', 'test', 'com', 'cn']

#指定分隔符为'.',并且指定切割次数为0次
>>> print str1.split('.',0)
['3w.gorly.test.com.cn']

#指定分隔符为'.',并且指定切割次数为1次
>>> print str1.split('.',1)
['3w', 'gorly.test.com.cn']

#指定分隔符为'.',并且指定切割次数为2次
>>> print str1.split('.',2)
['3w', 'gorly', 'test.com.cn']

#这种分割等价于不指定分割次数str1.split('.')情况
>>> print str1.split('.',-1)
['3w', 'gorly', 'test', 'com', 'cn']

#指定分隔符为'.',并取序列下标为0的项
>>> print str1.split('.')[0]
3w

#指定分隔符为'.',并取序列下标为4的项
>>> print str1.split('.')[4]
cn

# 统计字符串中出现的单词个数
>>> str2 = "This is the voa special english health report"
>>> list1 = str2.split(' ')
>>> list1
['This', 'is', 'the', 'voa', 'special', 'english', 'health', 'report']
>>> len(list1)
8

# 多次连续使用split()函数 ,例如:将从html代码中提取网站地址
>>> s = '<a href="www.test.com">test</a>'
>>> print s.split('"')[1]
www.test.com
>>> print s.split('"')[1].split('.')
['www', 'test', 'com']

# 使用split()函数去除一些特殊字符,去掉字符串中的换行符\n
>>> str2 = '''hello
... world
... !'''
>>> str2.split('\n')
['hello', 'world', '!']

二、os.path.split():路径文件分割函数
  说明:按照路径将文件名和路劲分割开,这里需要引入os包(import os)。
  语法:os.path.split(‘PATH’)
  参数说明:
  PATH指一个文件所在的绝对路径
  示例:

# 分割文件和其路劲
>>> import os
>>> print os.path.split("d:\test\a.txt")
('d:', '\test\x07.txt')
>>> print os.path.split('d:/test/a.txt')
('d:/test', 'a.txt')
>>> print os.path.split('d:\\test\\a.txt')
('d:\\test', 'a.txt')
# 从上面的结果可以看出,如果我们路劲写成d:\test\a.txt,是得不到我们想要的结果,必须将再加一个’\’来转义第二个’\’才行,或者直接写成d:/test/a.txt这样。

三、参考文章
  1、https://www.cnblogs.com/nebie/p/9952909.html


注意:本文归作者所有,未经作者允许,不得转载

全部评论: 0

    我有话说: