объявление юникода в Python и необработанная строка в комментариях - PullRequest
0 голосов
/ 25 марта 2019

По умолчанию мои файлы Python имеют следующие значения в верхней части файла:

# -*- coding: utf-8 -*-

То, что я только что заметил, не имеет значения, потому что я использую Python 3 ... (та же проблема ниже возникает без этой строки)

То, что я никогда раньше не рассматривал, это как это взаимодействует с необработанными строками, которые есть в коде или в комментариях. В частности, в качестве блочного комментария у меня было следующее, что при импорте модуля вызвала следующую ошибку:

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 42-43: truncated \UXXXXXXXX escape

Это имеет смысл, учитывая код (ниже), но, очевидно, это не то, что я хотел. Есть ли простой способ обойти эту проблему? Это определенное поведение или какой-то крайний случай?

"""
    #Test Code:
    import adi
    f = adi.read_file(r'C:\Users\RNEL\Desktop\test\test_file.adicht')
"""

Код \U, очевидно, является причиной проблемы, но это необработанная строка ... но внутри комментария ...

Использование Python 3.6.5 ...

1 Ответ

2 голосов
/ 25 марта 2019

""" - это не необработанная строка в Python, а только многострочная. Последовательности побега по-прежнему применяются.

Вы хотели использовать r"""?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...