我正在准备api,并使用 docstrings 作为文档。 api服务选择相关的ApiClass方法并连接每个docstring以创建文档。这样,api的程序开发人员和用户都可以使用相同的文档。
我的班级结构如下:
API_STATUS = {
1: 'some status',
2: 'some other status message'
}
class MyApi:
def __init__(self):
blah blah blah
def ApiService1(self, some_param):
"""
here is the documentation
* some thing
* some other thing
keep on explanation
"""
do some job
def ApiService2(self, some_param):
""""
Another doc...
"""
do some other job
我正在使用HttpResponse
返回最终的文档字符串。因此,当我请求服务文档时,输出是可读的
ApiService1
here is the documentation * some thing * some other thing keep on explanation
ApiService2
Another doc...
一切都很好,但有一些变量,如API_STATUS
字典和一些列表,我希望将它们添加到文档中。但是当我将它们解析为字符串或调用repr
函数时,所有格式都消失了
{1:'某种状态'2:'其他状态信息',3:'.....',4:'........',....}
这使得它不可读(因为dict有大约50个元素。)。
我不想写作文档字符串(因为在将来的更新中,相关的字典可能会被更新,而dicstring可能会被遗忘)
有没有办法将我的字典添加到我的响应文档字符串(在将其作为HttpResponse
返回之前)而不删除sytling缩进?
答案 0 :(得分:13)
使用pprint:
>>> API_STATUS = {1: 'some status', 2: 'some other status message'}
>>> import pprint
>>> pprint.pprint(API_STATUS, width=1)
{1: 'some status',
2: 'some other status message'}