Skip to main content
 首页 » 编程设计

Python 模块不可调用

2025年05月04日14luoye11

我搜索了很多帖子,但它们似乎没有帮助。

在文件夹 dir1/中,我有 main.py 和 plotcluster.py。在 plotcluster.py 我有:

import matplotlib as plt 
import itertools as it 
.... 
def plotc(): 
    colors = it.cycle('ybmgk') 
    .... 
    plt.figure() 
    .... 

在 main.py 中,我使用 plotcluster.py:

import plotcluster as plc 
.... 
plc.plotc() 

但这给了我一个错误,说模块对象不可调用。

     20     linestyles = it.cycle('-:_') 
     21 
---> 22     plt.figure() 
     23     # plot the most frequent ones first 
     24     for iter_count, (i, _) in enumerate(Counter(centerid).most_common()): 
 
TypeError: 'module' object is not callable 

它不会提示 itertools 模块,但 plt 会困扰它。这让我很困惑!

任何帮助将不胜感激!提前致谢!

请您参考如下方法:

@suhail 的回答会奏效。本质上,您访问的是模块 matplotlib.figure。此外,我认为您正在尝试访问 pyplot 函数(作为 plt 导入的 gen)并且它足以导入该模块以访问大多数标准绘图 api。

所以在您的plotcluster.py中将第一行更改为

import matplotlib.pyplot as plt 

从那以后应该会一帆风顺,你可以使用像

这样的东西

plt.plot(), plt.show() 等。