Python中的splitlines用来分割行。当传入的参数为True时,表示保留换行符 \n。通过下面的例子就很明白了:
输出结果:
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书中的例子:
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))
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)))
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 天天美味(13) - struct.unpack
Python 天天美味(15) - Python正则表达式操作指南(re使用)(转)
Python 天天美味(16) - 过滤字符串的技巧,map与itertools.imap
...
本文转自CoderZh博客园博客,原文链接:http://www.cnblogs.com/coderzh/archive/2008/05/05/1183967.html,如需转载请自行联系原作者