У меня есть этот хороший небольшой метод для удаления управляющих символов из строки. К сожалению, он не работает в Python 2.6 (только в Python 3.1). В нем говорится:Maketrans in Python 2.6
mpa = str.maketrans(dict.fromkeys(control_chars))
AttributeError: type object 'str' has no attribute 'maketrans'
def removeControlCharacters(line):
control_chars = (chr(i) for i in range(32))
mpa = str.maketrans(dict.fromkeys(control_chars))
return line.translate(mpa)
Как это может быть переписано?
Для тех, кто может попробовать что-то наподобие второго примера ... если вы получите ошибку 'TypeError: ожидается объект символьного буфера', это может означать, что строка, которую вы пытаетесь перевести, не является unicode. (Без сомнения, это очевидно для Марка, но не для noobs, подобных мне). – LarsH