Próbując naprawić plik PML (Palm Markup Language), wygląda na to, że mój plik testowy zawiera znaki spoza zestawu ASCII, co powoduje składanie przez MakeBook skargi. Rozwiązaniem byłoby usunięcie wszystkich znaków spoza ASCII w PML.Jak usunąć rozszerzony ascii przy użyciu Pythona?
Więc próbując rozwiązać ten problem w Pythonie, mam
import unicodedata, fileinput
for line in fileinput.input():
print unicodedata.normalize('NFKD', line).encode('ascii','ignore')
Powoduje to jednak w błędzie, że linia musi być „Unicode, nie STR”. Oto fragment pliku.
\B1a\B \tintense, disordered and often destructive rage†.†.†.\t
Nie do końca wiem, jak poprawnie przekazać linię do przetworzenia w tym momencie.
Czy chcesz odfiltrować dowolny znak ASCII, którego wartość jest większa niż 255? –
Ściśle mówiąc, nie ma czegoś takiego jak Extended ASCII. ASCII definiuje wartości od 0 do 127. Wszystko powyżej może być interpretowane tylko arbitralnie. Być może powinieneś użyć terminu * znaki spoza ASCII *. – dreamlax
Powiązane: Funkcja bezpiecznego wyjścia dla wyjścia terminalowego http://stackoverflow.com/questions/437476/safe-escape-function-for-terminal-output – jfs