Python字符串操作的split方法?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python字符串操作的split方法?相关的知识,希望对你有一定的参考价值。

str = "Line1-abcdef \nLine2-abc \nLine4-abcd";
print(str.split( )) #空字符
print(str.split(' ')) #空格分割
运行后的结果
['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
['Line1-abcdef', '\nLine2-abc', '\nLine4-abcd']
问:为啥子这个的结果里面一个有换行符\n,一个没有?为什么一个空字符分割换行符就没有,而以空格来分割,换行符就保留下来,希望能够详细解释下,谢谢

str.split()没有参数,代表以空字符分割,空字符包括空格、制表符、回车符、换行符等。因此,字符串中的空格和\n都是无参的split()的分割符。Line1-abcdef \nLine2-abc \nLine4-abcd分割后得到['Line1-abcdef', '', 'Line2-abc', '', 'Line4-abcd'],然后,split会抛弃得到的所有空字符串,因此最终结果就是['Line1-abcdef', 'Line2-abc', 'Line4-abcd']。追问

print(str.split(' ')) #空格分割
为啥str.split("")有空格参数的时候,打印出来的结果是带\n的呢

追答

str.split( )的分割符是空格、\t、\r、\n等,而str.split(' ')的分割符只有空格。
因此\n在前一种写法里是分割符而后一种写法里并不是。

参考技术A

Python字符串中的方法有很多,其中split方法是较为常用的方法。

了解一个内建函数/方法比较好的方式,就是使用help()函数查看它的文档字符串,打开Python解释器交互模式,输入:

其中str的位置可以随便替换成一个字符串,像这样:

结果如下:

可以看出split方法有两个参数,sep和maxsplit,分别代表分隔符和最多分几份;函数发的返回值是一个包含了字符串的列表。函数的作用说明大概是:返回一个单词的列表,使用sep作为分隔符号。最多分隔成maxsplit份。如果为指定sep,或者它的值为None,则任何空白的字符串都是分隔符,空的字符串也会从结果中删除。

上面的英语和中文解释都没看懂也不要紧,下面有代码示例:

下面是指定maxsplit值的用法:

下面是同时指定两个参数的用法,也很简单:

讲到这里大家应该队字符串的split方法的用法有所了解。以后不会用的内建函数或标准库中的函数,都可以使用help方法来查看它的文档字符串,写文档字符串的开发者们会尽可能耐心地说明该函数的用法。

以上就是小编介绍的Python字符串中的split方法。

python list操作


list操作:快速创建list、新增item、删除item、重新赋值item、颠倒item顺序、检索item

快捷创建list,两种方式:split方法、list函数和range函数配合使用。
 

split方法。写一个字符串,字符之间以空格分隔,然后对该字符串使用split方法。
a_list = a b c d e f g.spit() //创建列表[a,b,c,d,e,f,g],但这种写法要简洁很多

list函数和range函数配合使用。可以快速地创建一个非常大的列表。
a_list = list(range(100))  //很方便地创建一个0到99的列表

新增item,四种方式:concatenation、append、extend、insert,后三种方式都是列表的方法。
示例列表a_list = [a]:
concatenation添加。它添加的是另外一个列表,两个列表组合成一个新的列表:
a_list = a_list + [2.0,3] 

append方法添加。它在原列表末尾添加一个item,item类型可以是任意的:
a_list.append(hello) //在原有列表末尾添加一个类型为字符串的item
a_list.append([hello])  //在原有列表末尾添加一个类型为列表的item

extend方法添加。它类似于concatenation,只接受列表参数,并把列表中的item分解,然后添加到原有的列表:
a_list.extend(hello) //在原有列表末尾添加5个字符item,因为它把hello视为列表
a_list.extend([hello]) 

insert方法添加。在原有列表中插入item:
a_list.insert(0,c)  //在原有列表的0位置添加一个字符
a_list.insert(0.[c])  //在原有列表的0位置添加一个列表

删除item,三种方式:del、remove、pop,后两种方式都是列表的方法。
示例列表:a_list = [a,b,c,hello]:
del删除。它按item的索引值或切片进行删除:
del a_list[0]   //删除列表的第一个值
del a_list[:2]  //删除列表的前两个值。(为什么不是前三个呢?因为python的列表切片,包含前一个索引,但不包括后一个索引)

remove方法删除。它不按item索引,而是按照item的值进行删除:
a_list.remove(a) 

pop方法删除。它按item索引值进行删除,同时返回被删除的item值;若不指定索引,默认删除最后一个item:
a_list.pop(1)  //删除列表的第二个值,并返回被删除的值
a_list.pop()  //删除列表的最后一个值,并返回被删除的值

重新赋值item,对指定索引使用assignment符号进行赋值:
示例列表:a_list = [a,b,c,hello]:
a_list[1] = bbb //列表的第二个值b,将被替换为bbb

颠倒列表的item顺序,reverse方法:
示例列表:a_list = [a,b,c,hello]:
a_list.reverse() //列表的item顺序将被从后到前重新排列,更改为[hello,c,b,a]

检索列表的值,四种方式:in、not in、count、index,后两种方式是列表的方法。
示例列表:a_list = [a,b,c,hello]:
判断值是否在列表中,in操作符:
a in a_list 

判断值是否不在列表,not in操作符:
a not in a_list  //判断a是否不在列表中,并返回True或False

统计指定值在列表中出现的次数,count方法:
a_list.count(a) 

查看指定值在列表中


以上是关于Python字符串操作的split方法?的主要内容,如果未能解决你的问题,请参考以下文章

Python 字符串分割的方法

python字符串操作简单方法

python中split的具体用法

Python split()方法

Python split()方法

Python中的split()函数的使用方法