def tabstop(s, tabnum=4):
    if not '\t' in s:
        return s
l = s.find('\t')
return s[0:l] + ' ' * (tabnum - l) + tabstop(s[l + 1:], tabnum)
Как заменить пользовательские вкладки пробелами в строке, в зависимости от размера вкладки?