对于长字符串,我们一般要怎么处理呢?除了切片,但是切片太麻烦了。python为我们提供了字符串切割函数,它不仅可以通过指定字符切割,也可以去除空格符哦。下面就看一下小猿圈Python讲师是怎么介绍Python字符串操作--字符串分割函数的吧。
split() 语法:str.split(str=' ', num=string.count(str)) 描述:通过指定分隔符对字符串进行切片,如果参数num有指定值,则仅分隔num个子字符串。 参数:str 分隔符,默认为所有的空字符包括空格、换行(\n)、制表符(\t)。 num 分割次数 返回值:返回的是分割后字符串组成的列表。 >>> a = '\tabc \nm \tdef \t' >>> a.split() ['abc', 'm', 'def'] >>> b = 'www.kouding.com' >>> b.split('.') ['www', 'kouding', 'com'] >>> b.split('.',1) ['www', 'kouding.com'] >>> c = 'aabbbaaccca' >>> c.split('a') #当分割后左边什么都没有会被空字符串填充 ['', '', 'bbb', '', 'ccc', ''] >>> c.split('aa') ['', 'bbb', 'ccca'] >>> 注字符串被某一字符(或字符串)分割,且分割n次,并将分割的完成的字符串(或字符)赋给新的(n+1)个变量。 如:按‘.’分割字符,且分割1次,并将分割后的字符串赋给2个变量str1,str2 >>> str1,str2 = b.split('.',1) >>> print(str1,str2) www kouding.com >>> b.split('.',1)[0] 'www' >>> b.split('.',1)[1] 'kouding.com' >>> splintlines() 语法:str.splitlines([keepends=Flase]) 描述:按照行界符('\r', '\r\n', \n'等)分隔,返回一个包含各行作为元素的列表,默认不包含行界符。 参数:keepends 决定结果是否包含行界符。默认为False,不包含行界符。 返回值:返回一个包含各行作为元素的列表。 >>> a = 'abc\ndef\ngh' >>> a.splitlines() ['abc', 'def', 'gh'] >>> t = """www.kouding.com www.qianfeng.com www.baidu.com """ >>> t.splitlines() ['www.kouding.com ', 'www.qianfeng.com ', 'www.baidu.com '] >>> t.splitlines(True) ['www.kouding.com \n', 'www.qianfeng.com \n', 'www.baidu.com \n'] >>> 是不是觉得split()与splitlines()差不多,其实还是有一些区别的: >>> print(''.split('\n'),''.splitlines()) [''] [] >>> print('abc\n'.split('\n'),'abc\n'.splitlines()) ['abc', ''] ['abc'] >>> 最后想要了解更多关于Python和人工智能方面内容的小伙伴,请关注小猿圈Python官网等平台,大家不要忘记点赞、收藏、转发呦python自学交流:242719133,让更多和你一样有同样问题的同学得到帮助,小猿圈为大家提供一个良好的学习平台。
|