python - 检查方法是否导入,from X import Y

标签 python python-3.x python-import sys python-3.7

在 Python 3.7 中,我想导入一些方法并稍后在同一脚本中使用它们。在此之前,我想检查它们是否正确导入。

基于this回答 我可以检查模块是否完全导入到脚本中,但是如果我仅使用 form from X import Y 导入一种方法怎么办?

我做了什么

我已经完成了以下代码片段:

from shapely.geometry import asShape
from shapely.geometry import Point
import sys

if 'shapely.geometry.asshape' in sys.modules:
  print('Shapely Geometry asshape ok')
else:
  print('Shapely Geometry asshape NOT loaded')
  
if 'shapely.geometry.point' in sys.modules:
  print('Shapely Geometry point ok')
else:
  print('Shapely Geometry point NOT loaded')

这给了我以下结果:

Shapely Geometry asshape NOT loaded

Shapely Geometry point ok

重复问题

我不认为这是一个重复的问题,因为 SO 上的所有其他问题都是关于检查模块是否已导入(使用 import Z 形式),而不仅仅是某些方法。

最佳答案

内置函数 dir() 将为您提供一个包含所有导入的列表。您本地导入的函数也会出现在那里。您可以使用以下方式检查:

'myFunction' in dir ()

关于python - 检查方法是否导入,from X import Y,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54231255/

相关文章:

python-3.x - 齿轮 discord.py 中的 @bot.event

python - 在 Windows 上使用 Git 访问 Mercurial 存储库

python - Scrapy 分页在第 2 页后失败

Python递归仅在必要时评估

python - 如何从 Django 中的项目级包导入而不与同名的应用程序级模块冲突?

python-3.x - 怎么修?导入错误 : pycurl: libcurl link-time version is older than compile-time version

python - __subclasses__ 没有显示任何东西

python - Pandas GroupBy 全部应用

python - 无法在仅 tensorflow CPU 安装上加载动态库 'cudart64_101.dll'

python - 使用python读取和绘制VTK文件数据结构