在python中使用re.verbose时使用三个打开 - 关闭引号的原因

use*_*485 2 python

我只是好奇为什么我看到的大多数例子在使用正则表达式时都使用了re.verbose,使用'''?

我找到的一个例子如下所示

address = re.compile(
    '''              #THIS
    [\w\d.+-]+       # username
    @
    ([\w\d.]+\.)+    # domain name prefix
    (com|org|edu)    # we should support more top-level domains
    ''',             #AND  THIS  
    re.UNICODE | re.VERBOSE)
Run Code Online (Sandbox Code Playgroud)

Gav*_*n H 5

使用'''允许字符串跨越多行,因此它们可以分解re的每个部分而不是一条长行.

它是为了代码可读性而非功能性.

有关跨越多行的字符串的更多信息,请参阅Python Tutorial字符串部分.

  • 这绝对是头号理由.三引号还允许在regexp中使用未转义的单引号. (2认同)