python中的split()函数和os.path.split()函数使用详解


Posted in Python onDecember 21, 2019

Python中有split()和os.path.split()两个函数:

split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表。

os.path.split():将文件名和路径分割开。

1、split()函数

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

参数说明:

str: 表示为分隔符,默认为空格,但是不能为空串。若字符串中没有分隔符,则把整个字符串作为列表的一个元素。

num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串。

[n]: 表示选取第n个分片(从0计数)

默认情况下,使用空格作为分隔符,则分隔后,空串会自动忽略,如:

>>> s='love  python'

>>> s.split()
['love', 'python']

但若显式指定空格为分隔符,则不会自动忽略空串,如:

>>> s.split(' ')
['love', '', '', '', 'python']

默认的分隔符除了空格,还有 '\n\t\r',分隔后,空串会自动忽略,如下:

>>> s='love \n\t\r \t\r\n python \n\t\r'
>>> s.split()
['love', 'python']



>>> s='www.pku.edu.cn'
>>> s.split() #默认空格作为分隔符,但字符串中没有分隔符,因此,把整个字符串作为列表的一个元素
['www.pku.edu.cn']

>>> s.split('.') #以'.'作为分隔符,没有指定分隔次数,则有多少 '.' 就分隔多少次
['www', 'pku', 'edu', 'cn']

>>> s.split('.',0) #分隔0次
['www.pku.edu.cn']

>>> s.split('.',1) #分隔1次
['www', 'pku.edu.cn']

>>> s.split('.',2)#分隔2次
['www', 'pku', 'edu.cn']

>>> s.split('.',2)[1]#分隔2次,取索引为1的项
'pku'

>>> s.split('.',-1) #尽可能多的分隔,与不加num参数相同
['www', 'pku', 'edu', 'cn']

>>> s1,s2=s.split('.',1)#分隔1次,并把分隔后的2个字符串存放在s1和s2中
>>> s1
'www'
>>> s2
'pku.edu.cn'

>>> s='''love
... hello
... python'''
>>> s
'love\nhello\npython'
>>> s.split('\n')#以'\n'作为分隔符,分隔次数尽可能的多
['love', 'hello', 'python']
>>> print s
love
hello
python

练习一下下面的例子:

>>> s='hello python<[www.python.com]>hello python'
>>> s.split('[')[1].split(']')[0]
'www.python.com'
>>> s.split('[')[1].split(']')[0].split('.')
['www', 'python', 'com']

2、os.path.split()函数

语法:os.path.split('PATH')

参数说明:

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

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

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

实际上,该函数的分割并不智能,它仅仅是以 "PATH" 中最后一个 '/' 作为分隔符,分隔后,将索引为0的视为目录(路径),将索引为1的视为文件名,如:

>>> import os
>>> os.path.split('C:/soft/python/test.py')
('C:/soft/python', 'test.py')
>>> os.path.split('C:/soft/python/test')
('C:/soft/python', 'test')
>>> os.path.split('C:/soft/python/')
('C:/soft/python', '')

以上这篇python中的split()函数和os.path.split()函数使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python可变参数函数用法实例
Jul 07 Python
Python中使用装饰器来优化尾递归的示例
Jun 18 Python
Python人脸识别初探
Dec 21 Python
利用Opencv中Houghline方法实现直线检测
Feb 11 Python
Python带动态参数功能的sqlite工具类
May 26 Python
python的pip安装以及使用教程
Sep 18 Python
深入理解Django自定义信号(signals)
Oct 15 Python
Numpy 中的矩阵求逆实例
Aug 26 Python
Python多线程爬取豆瓣影评API接口
Oct 22 Python
python中Lambda表达式详解
Nov 20 Python
Python如何实现FTP功能
May 28 Python
Python实现爬取并分析电商评论
Jun 19 Python
python 操作hive pyhs2方式
Dec 21 #Python
python 消费 kafka 数据教程
Dec 21 #Python
python kafka 多线程消费者&amp;手动提交实例
Dec 21 #Python
Python序列类型的打包和解包实例
Dec 21 #Python
Python 使用threading+Queue实现线程池示例
Dec 21 #Python
Python CSV文件模块的使用案例分析
Dec 21 #Python
python实现的分析并统计nginx日志数据功能示例
Dec 21 #Python
You might like
php addslashes 函数详细分析说明
2009/06/23 PHP
PHP JSON 数据解析代码
2010/05/26 PHP
php遍历数组的方法分享
2012/03/22 PHP
PHP使用pcntl_fork实现多进程下载图片的方法
2014/12/16 PHP
帝国cms常用标签汇总
2015/07/06 PHP
Yii2创建表单(ActiveForm)方法详解
2016/07/23 PHP
php版微信开发之接收消息,自动判断及回复相应消息的方法
2016/09/23 PHP
PHP策略模式定义与用法示例
2017/07/27 PHP
javascript 命名空间以提高代码重用性
2008/11/13 Javascript
简单的代码实现jquery定时器
2013/11/17 Javascript
基于JQuery实现的Select级联
2014/01/27 Javascript
Jquery Ajax Error 调试错误的技巧
2015/11/20 Javascript
javascript超过容器后显示省略号效果的方法(兼容一行或者多行)
2016/07/14 Javascript
bootstrap table动态加载数据示例代码
2017/03/25 Javascript
基于Vue实现支持按周切换的日历
2020/09/24 Javascript
关于jQuery里prev()的简单操作代码
2017/10/27 jQuery
angular项目中bootstrap-datetimepicker时间插件的使用示例
2018/03/15 Javascript
JavaScript实现异步图像上传功能
2018/07/12 Javascript
vue 父组件给子组件传值子组件给父组件传值的实例代码
2019/04/15 Javascript
通过实例了解JS 连续赋值
2019/09/24 Javascript
vue-next/runtime-core 源码阅读指南详解
2019/10/25 Javascript
Vue向后台传数组数据,springboot接收vue传的数组数据实例
2020/11/12 Javascript
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
2021/01/13 Vue.js
Python实现利用163邮箱远程关电脑脚本
2018/02/22 Python
python获取代理IP的实例分享
2018/05/07 Python
Windows系统下PhantomJS的安装和基本用法
2018/10/21 Python
pandas 透视表中文字段排序方法
2018/11/16 Python
解决nohup执行python程序log文件写入不及时的问题
2019/01/14 Python
浅析python的Lambda表达式
2019/02/27 Python
Python 中 -m 的典型用法、原理解析与发展演变
2019/11/11 Python
CSS3模拟IOS滑动开关效果
2016/09/28 HTML / CSS
英国知名的皮手套品牌:Dents
2016/11/13 全球购物
优秀的毕业生的自我评价
2013/12/12 职场文书
2014年办公室主任工作总结
2014/11/12 职场文书
2014年班组长工作总结
2014/11/20 职场文书
Java时间工具类Date的常用处理方法
2022/05/25 Java/Android