split切割

python中的split()函数的用法

函数:split()

Python中有split()和os.path.split()两个函数,具体作用如下:
split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)
os.path.split():按照路径将文件名和路径分割开

一、函数说明

1、split()函数
语法:str.split(str="",num=string.count(str))[n]

参数说明:
str:表示为分隔符,默认为空格,但是不能为空('')。若字符串中没有分隔符,则把整个字符串作为列表的一个元素
num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量
[n]:表示选取第n个分片

注意:当使用空格作为分隔符时,对于中间为空的项会自动忽略

2、os.path.split()函数
语法:os.path.split('PATH')

参数说明:

1.PATH指一个文件的全路径作为参数:

2.如果给出的是一个目录和文件名,则输出路径和文件名

3.如果给出的是一个目录名,则输出路径和为空文件名

二、分离字符串

string = "www.gziscas.com.cn"

1.以'.'为分隔符

print(string.split('.'))

['www', 'gziscas', 'com', 'cn']

2.分割两次

print(string.split('.',2))

['www', 'gziscas', 'com.cn']

3.分割两次,并取序列为1的项

print(string.split('.',2)[1])

gziscas

4.分割两次,并把分割后的三个部分保存到三个文件

u1, u2, u3 =string.split('.',2)

print(u1)—— www

print(u2)—— gziscas

print(u3) ——com.cn

三、分离文件名和路径

import os

print(os.path.split('/dodo/soft/python/'))

('/dodo/soft/python', '')

print(os.path.split('/dodo/soft/python'))

('/dodo/soft', 'python')

四、实例

str="hello boy<[www.baidu.com]>byebye"

print(str.split("[")[1].split("]")[0])

www.baidu.com

五、实例二

[]括号 里面,表示取值  0是从左到右第一个。-1,从右到左第一个。

()括号里面,表示次数  -1是全部进行切割。0是不进行切割。1是从左到右,切割第一个。

复制代码
 1 str="http://www.runoob.com/python/att-string-split.html"
 2 print("0:%s"%str.split("/")[-1])
 3 print("1:%s"%str.split("/")[-2])
 4 print("2:%s"%str.split("/")[-3])
 5 print("3:%s"%str.split("/")[-4])
 6 print("4:%s"%str.split("/")[-5])
 7 
 8 print("5:%s"%str.split("/",-1))
 9 print("6:%s"%str.split("/",0))
10 print("7:%s"%str.split("/",1))
11 print("8:%s"%str.split("/",2))
12 print("9:%s"%str.split("/",3))
13 print("10:%s"%str.split("/",4))
14 print("11:%s"%str.split("/",5))
15 结果是:
16 
17 0:att-string-split.html
18 1:python
19 2:www.runoob.com
20 3:
21 4:http:
22 5:['http:', '', 'www.runoob.com', 'python', 'att-string-split.html']
23 6:['http://www.runoob.com/python/att-string-split.html']
24 7:['http:', '/www.runoob.com/python/att-string-split.html']
25 8:['http:', '', 'www.runoob.com/python/att-string-split.html']
26 9:['http:', '', 'www.runoob.com', 'python/att-string-split.html']
27 10:['http:', '', 'www.runoob.com', 'python', 'att-string-split.html']
28 11:['http:', '', 'www.runoob.com', 'python', 'att-string-split.html']
复制代码

六、实例三

str = "hello boy<[www.baidu.com]>byebye"
print(str.split("[")[1].split("]")[0])

结果:www.baidu.com
print(str.split("[")[1].split("]")[0].split("."))

结果:['www', 'baidu', 'com']

补充:
通过os.path.split()函数,这样可以把一个路径拆分为两部分,后一部分总是最后级别的目录或文件名:

os.path.split('/Users/michael/testdir/file.txt')

结果:

('/Users/michael/testdir', 'file.txt')

os.path.splitext()可以直接让你得到文件扩展名,很多时候非常方便:

os.path.splitext('/path/to/file.txt')

结果:

('/path/to/file', '.txt')

这些合并、拆分路径的函数并不要求目录和文件要真实存在,它们只对字符串进行操作。

发布了13 篇原创文章 · 获赞 3 · 访问量 4220

猜你喜欢

转载自blog.csdn.net/qq_43320461/article/details/103983793