Have you checked Settings... - Tools - Python integrated tools - Docstring format? You can choose the parsing style.
You can choose from:
- Plain
- Epytext
- reStructuredText
- Numpy
Documenting Python parameters in docstring using PyCharm - Stack Overflow
python - Custom PyCharm docstring stubs (i.e. for google docstring or numpydoc formats) - Stack Overflow
python - How to auto-generate the type of a field in a docstring in PyCharm? - Stack Overflow
What style does PyCharm / IntelliJ use for Python docstrings? - Stack Overflow
Videos
Have you checked Settings... - Tools - Python integrated tools - Docstring format? You can choose the parsing style.
You can choose from:
- Plain
- Epytext
- reStructuredText
- Numpy
Copied straight from Pycharm: Auto generate `:type param:` field in docstring:
Per the documentation:
If configured, the documentation comment stubs can be generated with
typeandrtypetags.
Following the link:
...
- In the Smart Keys page, select the check box Insert 'type' and 'rtype' to the documentation comment stub.
Once you have done this, put the cursor in a parameter name in the definition, activate the Smart Keys feature (Alt+Enter, by default) and select Specify type for reference in docstring. This will insert the appropriate comment line . Similarly you can put the cursor in the function/method name and select Specify return type in docstring.
So now if you type """ after a function declaration it creates them automatically for you:
def funct(a, b, c):
"""
:param a:
:type a:
:param b:
:type b:
:param c:
:type c:
:return:
:rtype:
"""
With PyCharm 5.0 we finally got to select Google and NumPy Style Python Docstrings templates.
It is also mentioned in the whatsnew section for PyCharm 5.0.
How to change the Docstring Format:
File --> Settings --> Tools --> Python Integrated Tools
There you can choose from the available Docstrings formats:
Plain, Epytext, reStructuredText, NumPy, Google
As pointed out by jstol: for Mac users, this is under
PyCharm -> Preferences -> Tools -> Python Integrated Tools.
As CrazyCoder mentions, its a ticket. Right now, you can only use EpyType and reStructuredText.
Go to Settings > Editor > General > Smart Keys, then check the box that says Insert type placeholders in the documentation comment stub.

Per the documentation:
If configured, the documentation comment stubs can be generated with
typeandrtypetags.
Following the link:
...
- In the Smart Keys page, select the check box Insert 'type' and 'rtype' to the documentation comment stub.
Note that the documentation has since been updated, the configuration guidance currently reads:
Enable documentation comments
Open the Editor | General | Smart Keys page of PyCharm settings โโฅS.
In the Enter section, select or clear Insert documentation comment stub checkbox.
Then, scroll to the Insert type placeholders in the documentation comment stub option and select or clear the checkbox as required. Refer to the option description for details.
Once you have done this, put the cursor in a parameter name in the definition, activate the Smart Keys feature (Alt+Enter, by default) and select Specify type for reference in docstring. This will insert the appropriate comment line . Similarly you can put the cursor in the function/method name and select Specify return type in docstring.
Those are the Sphinx style doc strings.
Python has some strong opinions about doc strings, see PEP257.
Here is a full description of all of the doc string types in Python: What is the standard Python docstring format?
Found this in townie's link:
https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html
I'm pretty sure restructured text is the default in PyCharm 2024.2
Hi Everyone,
I was looking at my code and realized the default docstring isn't my type. I have pretty much all my classes/methods documented in that type. I'm wondering is there any way to change the docstring type (e.g: numpy/google) for each module/class/function in my project automatically.
Would really appreciate, thanks in advance :D