When you create new python files and add new imports, PyCharm will automatically add the imports and __author__ tag whenever it can by itself. However, by default the __author__ tag will always appear below any imports. It seems to me that the __author__ tag should be up at the top of the file where I would also put things like docstrings. This way everything describing the file is at the top, then the actual code (including the imports) is below that.
So two questions:
- Is there a good reason for putting the __author__ tag below the imports?
- How can I set PyCharm to put the __author__ tag above the imports by default?
is according to the "Imports" section of PEP-8:
Imports are always put at the top of the file, just after any module comments and docstrings, and before module globals and constants
__author__
is a global "variable" and should therefore appear below the imports.
You may go to Pycharm's settings (Ctrl-Alt-S), choose "File and Code Templates" and adjust the "Python Script" template to your liking.
Pls Note: As mentioned by Martijn's comment below, item 1 of the above statement is no longer true as PEP8 has been updated (in June 2016) https://www.python.org/dev/peps/pep-0008/#id24 with a good example
"""
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