2016年啦,但是过节仿佛跟我没什么关系,我还是一如既往苦逼的做着苦逼的事儿。不过还是希望在新的一年里,各位看官可以身体健康万事顺意,这个地球可以世界和平,那个小兔子能乖乖的嫁给我,而且杭州的各种上市公司慈悲为怀的hr们可以拿一份好的offer给我,让我早日可以成为高富帅等等等等等等。
好了,梦回现实,没有那么多时间用来扯淡。看了一篇http://www.codesec.net/view/165565.html,里面提到了partition()函数,这个函数跟split差不多,都是搞切割的。
但是partition()具体是来根据括号内的分隔符将一个字符串分割,而且仅仅是切一刀,生成的结果是一个元祖。
AAA="http://123://.com" #这里有两个://#
print(AAA.partition("://")) #以://为分隔符开切#
生成的结果是:‘http‘, ‘://‘, ‘123://.com‘)
如果改一下,以com作为分隔符开切呢?
print(AAA.partition("com"))
回车的结果是:(‘http://123://.‘, ‘com‘, ‘‘)
如果是一个不存在的字符作为分隔符呢?那么返回的就是字符本身+两个空的元。
要知道,元祖是可以排序的,这样就可以很简单的想到,partition()[1]=分隔符本身
这些仅仅是一个皮毛东西,但是可以深挖掘一下。partition其实可用来切大段大段的源代码。我们还是以前几篇文章里的html作为例子。
html=‘‘‘
<html>
<head>
<title>A</title>
</head>
<body>
<div class="topic"><a herf="www.51cto.com/welcome.html">AA!</a>
<div class="list">
<url>
<li><a href="http://www.51cto.com/1.html">AAA</a></li>
<li><a href="http://www.51cto.com/2.html">AAAA</a></li>
<li><a href="http://www.51cto.com/3.html">AAAAA</a></li>
</url>
</div>
</div>
</body>
</html>‘‘‘
str="<title>A</title>"
content=html.partition(str)[2]
str1="</url>"
content1=content.partition(str1)[0]
print(content1)
这个程序的答案就是两头切的中间那一段,即
</head>
<body>
<div class="topic"><a herf="www.51cto.com/welcome.html">AA!</a>
<div class="list">
<url>
<li><a href="http://www.51cto.com/1.html">AAA</a></li>
<li><a href="http://www.51cto.com/2.html">AAAA</a></li>
<li><a href="http://www.51cto.com/3.html">AAAAA</a></li>
这样也能达到“大锤敲缝”的目的!