检查方法是否已导入,从X导入Y

2024-09-29 17:15:38 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python3.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

重复问题

我不认为这是一个重复的问题,因为这里的所有其他问题都是关于检查是否导入了模块(以import Z的形式),而不仅仅是一些方法。你知道吗


Tags: 方法fromimport脚本sysnotokpoint
2条回答

不管您是从一个模块中只导入一个函数,还是导入整个模块本身,整个模块总是导入到sys.modules。因此,在您的情况下,必须检查导入的模块,而不是函数:

'shapely.geometry' in sys.modules

看看这个问题。你知道吗

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

'myFunction' in dir ()

相关问题 更多 >

    热门问题