PyCharm - 有作者出现之前出现?

gol*_*enk 9 python import author jetbrains-ide pycharm

当您创建新的python文件并添加新的导入时,PyCharm会自动添加导入和__author__标记.但是,默认情况下,__ author__标记将始终显示在任何导入下方.在我看来,__ author__标签应该在文件的顶部,我也会放置文档字符串.这样,描述文件的所有内容都位于顶部,然后实际代码(包括导入)低于该值.

所以有两个问题:

  1. 是否有充分的理由将__author__标记放在导入之下?
  2. 如何设置PyCharm默认情况下将__author__标记放在导入上方?

ins*_*ure 9

  1. 根据PEP-8的"进口"部分:

    导入总是放在文件的顶部,就在任何模块注释和文档字符串之后,以及模块全局变量和常量之前

    __author__ 是一个全局"变量",因此应该出现在导入之下.

  2. 您可以转到Pycharm的设置(Ctrl-Alt-S),选择"文件和代码模板"并根据自己的喜好调整"Python脚本"模板.

请注意:正如下面Martijn的评论所述,上述声明的第1项已不再适用,因为PEP8已更新(2016年6月)https://www.python.org/dev/peps/pep-0008/#id24有一个很好的例子

"""
This is the example module.
This module does stuff.
"""

from __future__ import barry_as_FLUFL

__all__ = ['a', 'b', 'c']
__version__ = '0.1'
__author__ = 'Cardinal Biggles'

import os
import sys
Run Code Online (Sandbox Code Playgroud)

  • PEP 8已经[更新在2016年六月(http://bugs.python.org/issue27187)和dunder模块全局现在明确地放在前**进口(但之后的任何`从__future__`进口).见转速[cf8e888b9555](https://hg.python.org/peps/rev/cf8e888b9555)和[c451868df657](https://hg.python.org/peps/rev/c451868df657)和[编码样式(PEP8) - 模块级别"dunders"](/sf/ask/2733104041/). (4认同)