Python学习:split()方法以及关于str.split()[0]等形式内容的详细讲解
·
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
补充:
示例:
str="hello boy<[www.doiido.com]>byebye"
str.split("o")[0:2]
得到的结果:
['hell', ' b']
解析:
str.split("o")[0:2]
得到的是第一个o之前的内容 + 第一个o和第二个o之间的内容,这里第三个o前内容取不到,是一个左闭右开区间。
引申:
同理:`str.split("o")[0:-1]`取得的结果为
`['hell', ' b', 'y<[www.d', 'iid', '.c']`
`str.split("o")[1:3]`取得的结果为
[' b', 'y<[www.d']
注:注意空格!注意空格!注意空格!
如有错误内容请积极批评指正!感谢!
参考内容:
http://www.runoob.com/python/att-string-split.html
http://www.cnblogs.com/douzi2/p/5579651.html
更多推荐
已为社区贡献6条内容
所有评论(0)