在standard Arduino api的顶级__init__.py
中,完成以下操作:
from . import json
jsonify = json.jsonify
import json
?json.jsonify
?为什么不(i)import json
然后在需要时致电json.jsonify()
或(ii)from json import jsonify
,然后在需要时致电jsonify()
?我知道有两条评论,但它们很少启发我:
# We're not exposing the actual json module but a convenient wrapper around
# it.
from . import json
# This was the only thing that flask used to export at one point and it had
# a more generic name.
jsonify = json.jsonify
答案 0 :(得分:2)
- 为什么不
醇>import json
?
因为那会从标准库导入json
模块,作者想要导入他们自己的json
模块。
- 为什么要重命名
醇>json.jsonify
?
使写入和阅读更容易一些。想象一下,您正在使用flask
:flask.jsonify()
编写速度更快,可读性高于flask.json.jsonify()
(或者,它更容易导入,并且不会让您觉得你是从图书馆的深层内容中导入的东西。)
为什么不(i)
import json
然后在需要的地方拨打json.jsonify()
请记住,此文件指定 exports 。您必须将其称为flask.json.jsonify()
。
或(ii)
from json import jsonify
,然后在需要的地方拨打jsonify()
?
是的,第二行可以写成
from .json import jsonify
(正如 mgilson 正确指出)。我猜这是个人风格的问题。