001_015 Python拡張タブと圧縮タブは、タブを一定数のスペースに置き換えるか、逆に置き換える

853 ワード

コードは次のとおりです.
#encoding=utf-8
print '  '

#        

str='1\t2
\t ' ustr=u' \t ' print str.expandtabs() print ustr.expandtabs(4) # import re # tab 'a' '\t','b' ' ', def unexpand(astring, tablen=8): pieces = re.split(r'( +)',astring.expandtabs()) lensofar=0 # for i ,piece in enumerate(pieces): thislen=len(piece) lensofar += thislen if piece.isspace(): numblanks = lensofar % tablen numtabs = (thislen - numblanks + tablen -1)/tablen pieces[i] ='a'*numtabs+'b'*numblanks return ''.join(pieces) str='1 2 3' print unexpand(str)

印刷結果は次のとおりです.
中国1 2中国中国1 ab 2 abb 3