When I create a function with parameters, PyCharm offers me to create the docstring with :param param_name:
field, which is pretty good. But I also need to add the :type param_name:
.
So from that :
def foo(bar, xyz):
return bar + xyz
With the generate docstring option i have that (even with Insert 'type' and 'rtype' to the documentation stub enable) :
def foo(bar, xyz):
"""
:param bar:
:param xyz:
"""
return bar + xyz
And I would like that :
def foo(bar, xyz):
"""
:param bar:
:type bar:
:param xyz:
:type xyz:
"""
return bar + xyz
Per the documentation :
If configured , the documentation comment stubs can be generated with
type
andrtype
tags.
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 .
Just enable this checkbox:
Editor - General - Smart Keys - Insert type placeholders in the documentation comment stub.
Also remember to enable this item so that you can use the Alt + enter to auto insert documentation:
Editor - General - Smart Keys - Insert documentation comment stub
What you asked already has been replied but I find relevant to point that you can use
def foo(bar, xyz):
"""
:param bar_type bar:
:param xyz_type xyz:
"""
return bar + xyz
Use indicate bar_type
and xyz_type
the types of the variables. A good tip is that you can use |
to set more than one possible type. Example:
def foo(bar, xyz):
"""
:param float|int bar:
:param numpy.array xyz:
"""
return bar + xyz
First, check if you have the restructuredText plugin enabled. To check, go to preferences - plugins - restructuredText (if not enabled check the box to enable it) Next, in the same preferences tab, navigate to Tools > Python Integrated Tools > Docstrings
change the Docstring format: restructuredText (instead of Plain) also, check the boxes
Finally, to verify the changes, go to function block and add three quotes(single or double) and hit enter or space, you should see the docstring auto-generated.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.