Documenting `tuple` return type in a function docstring for PyCharm type hinting

StackOverflow https://stackoverflow.com/questions/18090037

  •  23-06-2022
  •  | 
  •  

Вопрос

How can I document that a function returns a tuple in such a way that PyCharm will be able to use it for type hinting?

Contrived example:

def fetch_abbrev_customer_info(customer_id):
  """Pulls abbreviated customer data from the database for the Customer
       with the specified PK value.

       :type customer_id:int The ID of the Customer record to fetch.

       :rtype:???
  """
  ... magic happens here ...

  return customer_obj.fullname, customer_obj.status #, etc.
Это было полезно?

Решение

I contacted PyCharm support, and this is what they said:

For tuple please use (<type_1>, <type_2>, <type_3>, e t.c.) syntax.

E.g.:

"""
:rtype: (string, int, int)
"""

This is confirmed in PyCharm's documentation:

Type Syntax

Type syntax in Python docstrings is not defined by any standard. Thus, PyCharm suggests the following notation:

...

  • (Foo, Bar) # Tuple of Foo and Bar
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top