Python Cookbook学习记录 ch1_14_2013/10/25
1.14 改变多行文本字符串的缩进
>>> def reindent(s,spacenum): leadspace = ' '*spacenum lines = [leadspace+line.strip() for line in s.splitlines()] return '\n'.join(lines)
确保文本每一行直接的相对缩进,这样子需要提前计算每一行行首的空格数(下述代码没有按照书中的方式进行处理)
>>> def numspaces(s): return [len(line)-len(line.lstrip()) for line in x.splitlines()] >>> def reindent(s, numSpaces): leading_space = numSpaces * ' ' abc = numspaces(s) lines = [(numSpaces+line2) + line1.strip() for line2,line1 in zip(abc,s.splitlines()) ] return '\n'.join(lines)
浙公网安备 33010602011771号