Python 模块matplotlib.cm没有[color]成员
我一直在练习matplotlib,然后在短暂的休息后,我再次打开代码,令我惊讶的是,我得到了这个缺少成员的错误,这是我以前没有得到的Python 模块matplotlib.cm没有[color]成员,python,matplotlib,visual-studio-code,member,pylint,Python,Matplotlib,Visual Studio Code,Member,Pylint,我一直在练习matplotlib,然后在短暂的休息后,我再次打开代码,令我惊讶的是,我得到了这个缺少成员的错误,这是我以前没有得到的 Module 'matplotlib.cm' has no 'Blues' memberpylint(no-member) 问题是: 正如终端上显示的那样,这个据称失踪的成员就在那里: 我在这个论坛()上找到了一个解决方案,它只是传递颜色而不是路径,如: cmap='Blues' 而不是: cmap=plt.cm.Blues 它是有效的。然而,对我来说,它似
Module 'matplotlib.cm' has no 'Blues' memberpylint(no-member)
问题是:
cmap='Blues'
而不是:
cmap=plt.cm.Blues
它是有效的。然而,对我来说,它似乎并没有结束,因为我真的觉得必须有一个变通方法来编写路径(“plt.cm.Blues”,几周前还可以),因为:
因此,经过一些彻底的研究,我尝试卸载VSCode,但这次通过删除文件夹“Code”(Win+R,然后键入“%appdata”,点击Enter)来清除其缓存。最后,VSCode按预期读取python应用程序,更妙的是,linting问题消失了。VSCode使用的python解释器是否可能与您在终端中使用的系统python不同?我的猜测是,VSCode python有一个不同版本的matplotlib,它可以解释两个脚本之间的不一致性。您的脚本在python 3.9.5和matplotlib 3.4.2上运行得很好
您可以运行代码,对吗 这是pylint而不是代码的问题 您可以参考,解释pylint中的
no member
问题
您可以将其添加到settings.josn
文件中以修复此问题:
"python.linting.pylintArgs": [
"--c-extension-no-member",
]
谢谢但是现在VSCode无法识别3.9.5版本。我已经更新了,但在左下角的蓝色条中仍然显示“Python 3.9.1 64位”您使用的matplotlib版本是什么?只是找不到有关Python版本问题的任何信息。我目前的版本显然是3.9.5(cmd提示符是这样说的,文件属性是这样说的,安装程序是这样说的…),但对于VSCode来说,它是3.6.1(至少它在底部的蓝色条中是这样说的)。路径是一样的,我所做的只是更新。文件夹中的文件“python.exe”现在是python的3.9.5版,但是……对不起,我指的是3.4.2(matplotlib版本)@顺便说一句,我创建了一个虚拟环境,显然在venv文件夹中创建了Python应用程序的专用副本,从而使VSCode找到了一个更新的解释器。现在3.9.5显示在解释器列表中,但该实例来自venv文件夹。我想让它“停止思考”,Python文件夹中的版本是3.9.1,所以我可以将其设为默认版本。谢谢你,Steven。是的,我可以毫无错误地运行代码,可能是因为在终端中运行代码的Python版本是正确的,即更新版本。使错误消失的是完全卸载VSCode:运行卸载程序,关键是删除“Code”文件夹。有些bug没有让VSCode按预期读取解释器:虽然我已经将Python更新为3.9.5,但VSCode会将其显示为3.6.1,最奇怪的是,它显然正在运行。我的问题从pylint问题变成了“VSCode无法识别Python更新”问题,这让我认为最好创建另一个线程,这里:()@101is5您好,很高兴听到您的回复。我认为Python版本问题是由缓存引起的,我也遇到过这个问题。您可以尝试卸载并重新安装“Python”扩展。@101is5您可以测试一下我的方法吗?我认为应该行得通。解释器版本的问题只是缓存问题。你的代码一点问题都没有,只是一个错误。希望收到你的来信,别客气!你的回答非常有启发性,但我在完全卸载后碰巧读到了。所以现在问题已经解决了,我无法真正测试你的方法,但我可能需要它。感谢所有的帮助和支持!
cmap=plt.cm.Blues
>>> dir(plt.cm) == dir(matplotlib.cm)
True
"python.linting.pylintArgs": [
"--c-extension-no-member",
]