我在一個(gè)tornado應(yīng)用的handler中從mongodb中讀到了一個(gè)集合的所有文檔,將轉(zhuǎn)換成了json格式,然后我用這些json數(shù)據(jù)為傳入了tornado模板中,顯示在了瀏覽器中。handler的代碼是樣的:class MainHandler(BaseHandler):
def get(self):
codes = self.db.code.find()
result = json.dumps(list(codes),
default=json_util.default,
sort_keys=True,
ensure_ascii=False,
indent=4)
print result
self.render('index.html', content = result)瀏覽器中顯示是這樣的:就是一個(gè)沒換行的狀態(tài)。在終端打印時(shí),卻又是換了行的:記得在django中,可以使用content.linebreaks來換行換行之類的,在tornado中,卻沒找到這種方法。煩請(qǐng)幫助一下。
1 回答

一只斗牛犬
TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超2個(gè)贊
dumps
的時(shí)候,是不會(huì)加縮進(jìn)之類的。你的dumps
指定了indent=4
。
indent
參數(shù)針對(duì)打印輸出時(shí)候的format
。
具體可以看文檔:
If indent is a non-negative integer (it is None by default), then JSON array elements and object members will be pretty-printed with that indent level. An indent level of 0 will only insert newlines. None is the most compact representation.
還有一個(gè)比較好的工具,標(biāo)準(zhǔn)庫(kù)pprint
用來print
對(duì)象的時(shí)候顯示更美觀:
from?pprint?import?pprint pprint(your_obj)
- 1 回答
- 0 關(guān)注
- 1122 瀏覽
添加回答
舉報(bào)
0/150
提交
取消