В настоящее время я прорабатываю "Изучение Python на хардвее" и пытаюсь изменить одно упражнение.Задача: записать двоичные эквиваленты языков в новый файл .txt
import sys
script, encoding, error = sys.argv
def main(language_file, encoding, errors):
line = language_file.readline()
if line:
print_line(line, encoding, errors)
return main(language_file, encoding, errors)
def print_line(line, encoding, errors):
next_lang = line.strip()
raw_bytes = next_lang.encode(encoding, errors=errors)
cooked_string = raw_bytes.decode(encoding, errors=errors)
bin_file.write(raw_bytes + "\n".encode("utf-8"))
print(raw_bytes, "<===>", cooked_string)
languages = open("languages.txt", encoding="utf-8")
bin_file = open("bin_languages.txt", "wb")
main(languages, encoding, error)
Большая часть этого кода взята из учебного примера, поэтому для целей понимания существует кодирование / декодирование raw_bytes дляcooked_strings и обратно.
К сожалению, выходной файл содержит то же содержимое, что и исходный файл.Мой подход не возможен?Спасибо!