Как применить кодировку UTF-8 при записи строки в файл в Python? Мне нужно это в большем наборе инструментов, но я не могу запустить его надежно. Следуя другим, неудачным подходам из Stack Overflow, вот MWE, который мне уже не удался:
import codecs
f1 = codecs.open("/tmp/works.utf8", "w", encoding="utf-8")
f1.write("ä")
f1.close()
f2 = codecs.open("/tmp/fails.utf8", "w", encoding="utf-8")
f2.write("a")
f2.close()
Тестирование на консоли:
$ file -i works.utf8
works.utf8: text/plain; charset=utf-8
$ file -i fails.utf8
fails.utf8: application/octet-stream; charset=binary
Чего мне не хватает?