รูปแบบ
Python docstrings สามารถเขียนได้หลายรูปแบบตามที่โพสต์อื่นแสดงให้เห็น แต่เริ่มต้นรูปแบบ docstring สฟิงซ์ไม่ได้กล่าวถึงและอยู่บนพื้นฐานreStructuredText (ส่วนที่เหลือ) คุณสามารถรับข้อมูลเกี่ยวกับรูปแบบหลักในโพสต์บล็อกนี้
โปรดทราบว่าแนะนำโดย reep โดยPEP 287
มีดังต่อไปนี้รูปแบบที่ใช้หลักสำหรับเอกสาร
- Epytext
ในอดีตมีลักษณะเหมือนjavadocแพร่หลายดังนั้นมันจึงเป็นฐานสำหรับEpydoc (ด้วยEpytext
รูปแบบที่เรียกว่า) เพื่อสร้างเอกสาร
ตัวอย่าง:
"""
This is a javadoc style.
@param param1: this is a first param
@param param2: this is a second param
@return: this is a description of what is returned
@raise keyError: raises an exception
"""
- reST
ปัจจุบันรูปแบบที่แพร่หลายมากขึ้นอาจเป็นรูปแบบreStructuredText (reST) ที่ใช้โดยสฟิงซ์เพื่อสร้างเอกสาร หมายเหตุ: มันถูกใช้เป็นค่าเริ่มต้นใน JetBrains PyCharm (พิมพ์เครื่องหมายคำพูดสามเท่าหลังจากกำหนดวิธีการและกด Enter) นอกจากนี้ยังใช้เป็นค่าเริ่มต้นเป็นรูปแบบเอาต์พุตใน Pyment
ตัวอย่าง:
"""
This is a reST style.
:param param1: this is a first param
:param param2: this is a second param
:returns: this is a description of what is returned
:raises keyError: raises an exception
"""
- Google
Google มีรูปแบบของตัวเองที่มักใช้ นอกจากนี้ยังสามารถตีความได้โดยสฟิงซ์ (เช่นใช้ปลั๊กอินนโปเลียน )
ตัวอย่าง:
"""
This is an example of Google style.
Args:
param1: This is the first param.
param2: This is a second param.
Returns:
This is a description of what is returned.
Raises:
KeyError: Raises an exception.
"""
แม้ตัวอย่างเพิ่มเติม
- Numpydoc
โปรดทราบว่า Numpy แนะนำให้ติดตามnumpydocของตนเองตามรูปแบบของ Google และใช้งานได้โดย Sphinx
"""
My numpydoc description of a kind
of very exhautive numpydoc format docstring.
Parameters
----------
first : array_like
the 1st param name `first`
second :
the 2nd param
third : {'value', 'other'}, optional
the 3rd param, by default 'value'
Returns
-------
string
a value in a string
Raises
------
KeyError
when a key error
OtherError
when an other error
"""
แปลง / ฝ่ายผลิต
เป็นไปได้ที่จะใช้เครื่องมือเช่นPymentเพื่อสร้างเอกสารโดยอัตโนมัติไปยังโครงการ Python ที่ยังไม่มีการจัดทำเป็นเอกสารหรือเพื่อแปลงเอกสารที่มีอยู่ (สามารถผสมหลายรูปแบบ) จากรูปแบบหนึ่งไปยังอีกรูปแบบหนึ่ง
หมายเหตุ: ตัวอย่างที่นำมาจากเอกสาร Pyment