你怎么知道你导入的模块是函数还是类?
Posted
技术标签:
【中文标题】你怎么知道你导入的模块是函数还是类?【英文标题】:How do you know that module you are importing is function or class? 【发布时间】:2021-12-13 23:55:45 【问题描述】:在 Python 中,一个模块可以在同一个模块中包含函数、类或两者。当我将模块导入另一个模块时,有没有办法确定模块是否只有函数或类或两者都有?
我问这个的原因是因为类必须实例化为对象,而函数则不需要。所以每次我import
时,我都想知道我在处理什么,而无需打开模块 esp。外部模块。
【问题讨论】:
当您使用第三方模块时,您需要查找文档或阅读代码。 如果代码遵循PEP8,类命名为CamelCase
,函数命名为snake_case
。但从更一般的角度来看,您不必担心这一点。从 Python 的角度来看,类和函数是可以调用的东西,它们可能接受也可能不接受某些数据,可能返回也可能不返回一些其他数据。事实上,有时包维护者编写的函数看起来和工作起来都像类,反之亦然。您通常会通过阅读文档来弄清楚这一点,无论如何在导入之前您都希望这样做。
只能导入模块(.py 文件)。它们可能包含函数和/或类,您必须阅读文档或源代码才能知道这一点。标准库中的许多模块的开头都有一个文档字符串,因此您可以在 Python 控制台中输入>>> import module_name
,然后输入>>> help(module_name)
来查看它。
谢谢@jfaccioni
谢谢@PM77-1。
【参考方案1】:
这可能就是你要找的东西:How to check whether a variable is a class or not?
不太确定您的用例是什么,但您也可能会发现内置 dir function 的用途。
【讨论】:
始终欢迎提供指向潜在解决方案的链接,但请在链接周围添加上下文,以便您的其他用户了解它是什么以及它存在的原因。始终引用重要链接中最相关的部分,以防目标站点无法访问或永久离线。以上是关于你怎么知道你导入的模块是函数还是类?的主要内容,如果未能解决你的问题,请参考以下文章