причина использования трех кавычек open-close при использовании re.verbose в python

#python

#python

Вопрос:

Мне просто любопытно, почему в большинстве примеров, которые я видел, в которых используется re.verbose при использовании регулярных выражений, используется «‘?

Пример, который я нашел, показан ниже

 address = re.compile(
    '''              #THIS
    [wd. -]        # username
    @
    ([wd.] .)     # domain name prefix
    (com|org|edu)    # we should support more top-level domains
    ''',             #AND  THIS  
    re.UNICODE | re.VERBOSE)
  

Комментарии:

1. Обратите внимание, что в общем случае вы хотите использовать «необработанные» строки, начиная их с, например, r''' . Это позволит вам использовать escape-последовательности регулярных выражений (например, w ) в регулярном выражении, не беспокоясь о том, что они будут интерпретированы как экранирующие строки типа n . docs.python.org/tutorial/introduction.html#strings

Ответ №1:

Использование ''' позволяет строке занимать несколько строк, поэтому они могут разбивать каждую часть re вместо одной длинной строки.

Это сделано для удобства чтения кода, а не для функциональности.

Смотрите раздел «Строки» в руководстве по Python для получения дополнительной информации о строках, которые занимают несколько строк.

Комментарии:

1. Это определенно причина номер один. Тройные кавычки также позволяют использовать неэкранированные одинарные кавычки в регулярном выражении.