Как удалить символы, отличные от ASCII, но оставить точки и пробелы с помощью Python?

Я работаю с файлом .txt. Мне нужна строка текста из файла без символов, отличных от ASCII. Однако я хочу оставить пробелы и точки. В настоящее время я их тоже снимаю. Вот код:

def onlyascii(char):
    if ord(char) < 48 or ord(char) > 127: return ''
    else: return char

def get_my_string(file_path):
    f=open(file_path,'r')
    data=f.read()
    f.close()
    filtered_data=filter(onlyascii, data)
    filtered_data = filtered_data.lower()
    return filtered_data

Как мне изменить onlyascii (), чтобы оставить пробелы и точки? Думаю, это не так уж сложно, но я не могу понять.

85
задан alexwlchan 30 July 2015 в 14:32
поделиться