Python天天美味(14) - splitlines

Python中的splitlines用来分割行。当传入的参数为True时,表示保留换行符 \n。通过下面的例子就很明白了:

mulLine  =   """ Hello!!!
 Wellcome to Python's world!
    There are a lot of interesting things!
        Enjoy yourself. Thank you!
"""

print   '' .join(mulLine.splitlines())
print   ' ------------ '
print   '' .join(mulLine.splitlines(True))

输出结果:
Hello!!! Wellcome to Python's world!    There are a lot of interesting things!        Enjoy yourself. Thank you!
------------
Hello!!!
 Wellcome to Python's world!
    There are a lot of interesting things!
        Enjoy yourself. Thank you!

利用这个函数,就可以非常方便写一些段落处理的函数了,比如处理缩进等方法。如Cookbook书中的例子:

def  addSpaces(s, numAdd):
    white 
=   "   " * numAdd
    
return  white  +  white.join(s.splitlines(True))
def  numSpaces(s):
    
return  [len(line) - len(line.lstrip( ))  for  line  in  s.splitlines( )]
def  delSpaces(s, numDel):
    
if  numDel  >  min(numSpaces(s)):
        
raise  ValueError,  " removing more spaces than there are! "
    
return   ' \n ' .join([ line[numDel:]  for  line  in  s.splitlines( ) ])
def  unIndentBlock(s):
    
return  delSpaces(s, min(numSpaces(s)))


Python 天天美味系列(总)

Python 天天美味(12) - 条件判断的缩写 

Python 天天美味(13) - struct.unpack   

Python 天天美味(14) - splitlines  

Python 天天美味(15) - Python正则表达式操作指南(re使用)(转)  

Python 天天美味(16) - 过滤字符串的技巧,map与itertools.imap  

...

你可能感兴趣的:(python)