Python学习:split()方法以及关于str.split()[0]等形式内容的详细讲解

str.split(str="", num=string.count(str)).

参数:
str – 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
num – 分割次数。默认为 -1, 即分隔所有。
返回值:
Python split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串

返回分割后的字符串列表。
代码示例:
输入

str = "Line1-abcdef \nLine2-abc \nLine4-abcd";
print str.split( );          # 以空格为分隔符,包含 \n
print str.split(' ', 1 );    # 以空格为分隔符,分隔成两个

输出

['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
['Line1-abcdef', '\nLine2-abc \nLine4-abcd']

关于str.split()[0]等形式内容的详细讲解
代码示例:
输入与输出

>>> str="hello boy<[www.doiido.com]>byebye"
>>> str.split("[")[1].split("]")[0]
'www.doiido.com'
>>> str.split("[")[1].split("]")[0].split(".")
['www', 'doiido', 'com']

解析:
str.split("[")[1]. split("]")[0]输出的是 [ 后的内容以及 ] 前的内容。
str.split("[")[1]. split("]")[0]. split(".") 是先输出 [ 后的内容以及 ] 前的内容,然后通过 . 作为分隔符对字符串进行切片。

下面再对上面的例子进一步操作加深理解:

str="hello boy<[www.doiido.com]>byebye"
str.split("o")[0]

得到:‘hell’

str="hello boy<[www.doiido.com]>byebye"
str.split("o")[1]

得到:’ b’(这里b的前面有个空格!)

str="hello boy<[www.doiido.com]>byebye"
str.split("o")[3]

得到:‘iid’(这里得到的iid是第3个o后和第4个o前之间的内容)

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

得到:‘hello boy<’(这里得到的hello boy<是第一个[之前的内容)

解析:
str.split(“o”)[0]得到的是第一个o之前的内容
str.split(“o”)[1]得到的是第一个o和第二个o之间的内容
str.split(“o”)[3]得到的是第三个o后和第四个o前之间的内容
str.split("[")[0]得到的是第一个 [ 之前的内容
注意:[ ]内的数值必须小于等于split("")内分隔符的个数,否则会报错,报错内容如下:

str="hello boy<[www.doiido.com]>byebye"
str.split("o")[6]
IndexError                                Traceback (most recent call last)
<ipython-input-15-50d5956c7ce9> in <module>()
      1 str="hello boy<[www.doiido.com]>byebye"
----> 2 str.split("o")[6]

IndexError: list index out of range

如有错误内容请积极批评指正!感谢!
参考内容:
http://www.runoob.com/python/att-string-split.html

http://www.cnblogs.com/douzi2/p/5579651.html
————————————————
版权声明:本文为CSDN博主「景墨轩」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值