gpt4 book ai didi

import - 在 Python 中,仅导入某些内容以更方便地公开它是否被认为是不好的做法?

转载 作者:太空宇宙 更新时间:2023-11-03 13:51:54 25 4
gpt4 key购买 nike

如果没有示例,这可能没有意义。我正在使用 python-disqus在我的 Django 应用程序中,我正在包装它以更好地将它与我的应用程序的其余部分分离。

我有一个文件 disqus.py,它导入 disqusapi 并定义了一些辅助函数。在应用程序代码的其他地方,我可以简单地添加 from mango import disqus,但在一些地方,有必要捕获在进行 API 调用时可能引发的异常。这意味着我被迫做类似的事情:

from disqusapi import APIError
from mango import disqus

try:
disqus.thread.fetch(1)
except APIError, error:
logger.warn('Disqus API error: %s' % error)

如果我改为在 disqus.py 的顶部导入 APIError,我可以这样写:

from mango import disqus

try:
disqus.thread.fetch(1)
except disqus.APIError, error:
logger.warn('Disqus API error: %s' % error)

Pyflakes 提示未使用的导入,但这似乎是一件合理的事情。我应该高兴地在这里忽略 Pyflakes,还是我错过了更好的选择?

明确地说,我不需要以任何方式修改 disqusapi.APIError,因此不需要子类化。

最佳答案

In Python is it considered bad practice to import something solely to expose it in a more convenient manner?

简短回答:否。

长答案,如果你正在编写一个包装器来使你自己的代码更简单、更容易理解,你可以做任何你喜欢的事情。如果您想包装其他代码,或导入模块并对其进行子类化,或导入模块并更改其方法。

如果您正在为其他人编写代码,您可能想要添加注释来解释您在做什么。如果只是为了自己,那一切都很好。

关于import - 在 Python 中,仅导入某些内容以更方便地公开它是否被认为是不好的做法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6406087/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com