Python字符串操作之字符串分割与组合「建议收藏」

Python字符串操作之字符串分割与组合「建议收藏」12、字符串的分割和组合str.split():字符串分割函数通过指定分隔符对字符串进行切片,并返回分割后的字符串列表。语法:os.path.split():路径文件分割函数join(seq):将序列组合成字符串函数

大家好,又见面了,我是你们的朋友全栈君。

12、字符串的分割和组合

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

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

#定义一个字符串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

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="www.test.com">test</a>'
>>> print s.split('"')[1]
www.test.com
>>> 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:\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这样。

12.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="www.test.com">test</a>'
>>> print s.split('"')[1]
www.test.com
>>> print s.split('"')[1].split('.')
['www', 'test', 'com']
>>> print '.'.join(s.split('"')[1].split('.'))
www.test.com
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139597.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • js数组字符串转数组对象_js数组对象排序

    js数组字符串转数组对象_js数组对象排序js对象使用<script>//js对象是一种无序的集合{}表示varobj={name:”张三”,age:18}//取值console.log(obj.name)//张三console.log(obj[“name”])/…

    2025年11月2日
    3
  • WAP网站开发的要点

    WAP网站开发的要点开发维护移动的 WAP 网站也有一段时间了 总结一下我认为 WAP 网站的要点 1 速度永远是第一位的 手机上网本来速度就慢 没办法只有在服务器端提高速度 采取了一些措施 如数据都是放在缓存中 对数据库中数据的更新都是有进程来定时更新有变更的表 对于一些精巧的技术 如反射 都不能使用 2 考虑到终端的多样性 手机访问的终端显示屏幕五花八门 有的可以显示 10 行 有的只能显示 4 行 有的支持彩色 有的连

    2025年8月14日
    5
  • webservice中文乱码处理_java取session乱码问题

    webservice中文乱码处理_java取session乱码问题javawebservice部分中文乱码解决,注意是部分乱码,不是全部哦!!!

    2022年10月9日
    3
  • 数据库建立

    数据库建立1, 在我们写完计划表后开始建立数据库,数据库的建立不是说建立完了就可以了,到后面是需要不断地改善的,因为前期的数据我们可能列举出表时不够完整,或者表与表之间的关系链接错误,重复。2, 随着项目的功能实现,渐渐的数据库的数据显示出不足,我们就要进行改善1, 数据库的建立要先对项目的功能有足够的理解,要熟悉项目,把项目的表列举出来,那些数据是属于那个表的,一个表里面需要获取到那些表的信息,确定…

    2022年7月24日
    8
  • pycharm创建anaconda环境_conda怎么安装

    pycharm创建anaconda环境_conda怎么安装1、首先在condaprompt中创建新的环境。condacreate–name<env_name><package_names>尖括号代表文字内容,实际使用时不需要添加。如之后还需要再添加新的库进入环境,需在condaprompt中激活环境,并且利用pip安装新的包。<查看环境列表>condaenvlist或者condainfo-e<激活目标环境>activate<env_name>&l

    2022年8月25日
    8
  • 【2022年更新】手把手教你去除 WinRAR 的弹窗广告

    【2022年更新】手把手教你去除 WinRAR 的弹窗广告WinRAR作为知名的老牌压缩软件,二十余年来始终风靡全球,经久不衰。但对于中国用户,其简体中文的个人免费版安装后会有“评估版本”的标记,而且每次启动时会有代理商的弹窗广告。本文教你如何去除标记和弹窗广告,让你的WinRAR恢复纯净体验。

    2022年6月5日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号