Python: возможно ли использования кодировок отличных от utf8?, Аноним, 13-Авг-20, 23:29 [смотреть все]Добрый день. Интересует способ использовать utf16 в строках в исходнике (без костылей которые я могу придумать, но будет больно поддерживать).Указание кодировки в формате # -*- coding: utf16 -*- не работает (пару лет назад работало): если файл с BOM, то пишет SyntaxError: Non-UTF-8 code starting with '\xff' in file ../../tx_utf16.py on line 1, but no encoding declared; если без SyntaxError: Non-UTF-8 code starting with '\xff' in file ../../tx_utf16.py on line 4194, but no encoding declared; естественно это не utf-8 это utf-16, и я указал кодировку. Зачем он тупит? |
- Python: возможно ли использования кодировок отличных от utf8?, eRIC, 11:16 , 19-Авг-20 (5)
SyntaxError: Non-UTF-8 code starting with > '\xff' in file ../../tx_utf16.py on line 4194, but no encoding declared; > естественно это не utf-8 это utf-16, и я указал кодировку. Зачем > он тупит?Python 3 по умолчанию использует UTF-8, скорее всего на строчке 4194 у вас данные которые написаны не в UTF-8 кодировке. Попробуйте использовать конструкции decode/encode чтобы перевести в правильной кодировке данные программе.
- Python: возможно ли использования кодировок отличных от utf8?, Аноним, 18:16 , 20-Авг-20 (6) +1
В той строчке у меня комментарий, расшифровывающий юникодные символы, отличающиеся между платформами. Они корректные только в utf16. Я в принципе пока это обошёл, но чувствую на виндоус опять словлю проблем. Я так понял в python3 все строки (включая комментарии) расшифровываются в utf8 внутри? Во 2 можно было выбирать любую кодировку, в том числе для операций с файловыми путями.
- Python: возможно ли использования кодировок отличных от utf8?, Аноним, 18:22 , 20-Авг-20 (7)
Проблемы у меня от того, что мне нужно обработать утф8 файлы с виндоус, некорректные в линуксе, на линуксе, потом вернуть их обратно и отправить на виндоус. Выполняю очень технологичную замену символов при чтении и обратную замену при записи, ну и конечно в коде только коды символов/байтов. Я не в восторге, если честно, да и кто знает какие ещё там последовательности криво отображаются между платформами. Спасибо хоть интернет у нас на линуксе -- разгребать юникодные косяки IIS было бы ещё печальней.
- Python: возможно ли использования кодировок отличных от utf8?, eRIC, 09:28 , 21-Авг-20 (8)
> в python3 все строки (включая комментарии) расшифровываются в utf8 внутри? Во > 2 можно было выбирать любую кодировку, в том числе для операций > с файловыми путями.да в 3м все в utf8. во 2й версии если юникод то приходилось типа u'бла бла бла' писать.
- Python: возможно ли использования кодировок отличных от utf8?, Аноним, 19:22 , 21-Авг-20 (9)
Там в коде полно артефактов времён второй версии. Просто мне был нужен utf16 вместо utf8, а получается нельзя иметь декодированные строки в нём (при конвертации корректный utf16 превращается в некорректный платформозависимый utf8), во всяком случае в ряде внешних либ. Насчёт комментариев я погорячился, это докстринг, но трейс указывает куда угодно, только не на место проблемы. В общем, я разобрался, целиком мой косяк, я отвлёкся на артефакты, перепутал различные проблемы, и искал совсем не там, где стоило бы. А ещё лучше не работать с питоном на венде/маке, лучше насовать немного костылей на линуксе, но зато корректно работать везде будет.
|