2015-12-07 2 views
0

Я пытаюсь использовать YAML для форматирования электронной почты, которую посылает скрипт python, но в письме есть искусство ascii в теле, которое yaml ошибочно принимает за другой ключ. Как я сделать сообщение в пределах ключевых использования специальных символов, как _/(и т.д.?Использование сложных символов в YAML:

Вот

MESSAGE: 
    Dear {santa}, 


    This year you are {santee}'s Secret Santa! Ho Ho Ho! 


    The maximum spending limit is $50.00 


    ------------------------------------------------------------------ 

    Please Note 

    ------------------------------------------------------------------ 


    This message was automatically generated by secretSanta.py 


    Do not reply to this email as no one is monitoring the inbox 


    If there are any questions, comments, concerns, etc please email [email protected] 


    New matches can be generated in the case of extenuating circumstance 


    Happy Gifting, 

    TheSecretSantaRobot 

      _ 
      {_} 
     /\ 
     / \ 
     /_____\ 
     {`_______`} 
     //[] []\\ 
     (/(__7__)\) 
     |'-' = `-'| 
     |   | 
     /\  /\ 
    /'. .' \ 
    /_/ `"` '\_\ 
    {__}###[_]###{__} 
    (_/\_________/\_) 
     |___|___| 
     |--|--| 
     (__)`(__) 

Если я вынимаю искусства Санта он посылает хорошо, но я получаю исключение KeyError с ним и я не знаю, куда помещать кавычки, чтобы устранить ошибки.

+0

Вы можете рассмотреть возможность редактирования и просто попросить часть в редактировании, которая, по-видимому, является единственной важной частью. –

+0

сделано, вы правы, в противном случае его запутанный –

ответ

0

Я думаю, что вы хотите использовать литальный скалярный индикатор, |, чтобы указать, что отступы представляют собой единый скаляр (язык YAML для строки), форматирование которого должно сохраняться :

MESSAGE: | 
    Dear {santa}, 

    ...snip... 

      _ 
      {_} 
     /\ 
     / \ 
     /_____\ 
     {`_______`} 
     //[] []\\ 
     (/(__7__)\) 
     |'-' = `-'| 
     |   | 
     /\  /\ 
    /'. .' \ 
    /_/ `"` '\_\ 
    {__}###[_]###{__} 
    (_/\_________/\_) 
     |___|___| 
     |--|--| 
     (__)`(__) 
+0

труба вызвала большую ошибку трассировки стека –

Смежные вопросы