python pep8缩进詹金斯

sir*_*ine 3 python pep8 indentation jenkins

我在这段代码中遇到了 pep8 标记错误。(见下文)。

urlpatterns = patterns('',
                      (r'', include(v1_api.urls)),
                       url(
                       r"^ajax/photos/upload/(?P<slug>[-_\w]+)/$",
                       "medicms.views.upload_photos",
                       name="upload_photos"
                      ),
                       url(
                       r"^ajax/photos/recent/$",
                       "medicms.views.recent_photos",
                       name="recent_photos"
                      ),
                      )
Run Code Online (Sandbox Code Playgroud)

我正在使用 jenkins 来修复 lint 和 pep8 错误。我需要将所有代码行减少到 79 个字符以下。这些行低于 79,但詹金斯在第 3 行说 127 > 79,在第 4 行说 106 > 79。

看起来我有缩进错误,jenkins 正在阅读两行代码,它应该阅读其中一行。谁能看到我没有发现的任何明显错误?或者有谁知道这是否是詹金斯的一个已知问题?谢谢

小智 5

我没有发现任何错误;我只能猜测詹金斯是不正确的。Runningpep8确实产生了 3 倍的警告E124 closing bracket does not match visual indentation,这可能也是 jenkins 在这里抱怨的原因。

对于这种特殊情况(Django URL 模式),我倾向于按如下方式对齐:

urlpatterns = patterns(
    '',
    (r'', include(v1_api.urls)),
    url(
        r"^ajax/photos/upload/(?P<slug>[-_\w]+)/$",
        "medicms.views.upload_photos",
        name="upload_photos"
    ),
    url(
        r"^ajax/photos/recent/$",
        "medicms.views.recent_photos",
        name="recent_photos"
    ),
)
Run Code Online (Sandbox Code Playgroud)

这至少会关闭pep8,并且总体上可以缩短线条。