提问人:sunniva 提问时间:8/9/2023 更新时间:8/9/2023 访问量:63
为什么python突然不能从导入的模块运行函数?
Why can't python suddenly not run functions from imported modules?
问:
我在 python 上遇到了一些奇怪的问题,我不知道如何解决它。
对于以下代码:df = pd.DataFrame.from_dict(mydict)
我收到错误:AttributeError: module 'pandas' has no attribute 'DataFrame'
其他模块也会发生同样的情况。另一个例子:L = np.sqrt((x2-x1)**2 + (y2-y1)**2)
给出错误:AttributeError: module 'numpy' has no attribute 'sqrt'
我怀疑我可能设法搞砸了我的道路?
当我尝试打印我的sys.path时,会发生以下情况:
import sys
sys.path
Traceback (most recent call last):
File ~\AppData\Local\anaconda3\lib\site-packages\traitlets\traitlets.py:653 in get
value = obj._trait_values[self.name]
KeyError: 'type_printers'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File ~\AppData\Local\anaconda3\lib\site-packages\IPython\core\formatters.py:706 in __call__
type_pprinters=self.type_printers,
File ~\AppData\Local\anaconda3\lib\site-packages\traitlets\traitlets.py:700 in __get__
return self.get(obj, cls)
File ~\AppData\Local\anaconda3\lib\site-packages\traitlets\traitlets.py:656 in get
default = obj.trait_defaults(self.name)
File ~\AppData\Local\anaconda3\lib\site-packages\traitlets\traitlets.py:1868 in trait_defaults
return self._get_trait_default_generator(names[0])(self)
File ~\AppData\Local\anaconda3\lib\site-packages\traitlets\traitlets.py:1229 in __call__
return self.func(*args, **kwargs)
File ~\AppData\Local\anaconda3\lib\site-packages\IPython\core\formatters.py:686 in _type_printers_default
d[numpy.float64] = lambda obj, p, cycle: p.text(self.float_format % obj)
AttributeError: module 'numpy' has no attribute 'float64'
有什么办法可以解决这个问题吗?
答:
1赞
sant chanana
8/9/2023
#1
错误消息表明在 pandas 模块中找不到 DataFrame 类。 确保您已正确安装 pandas 库。您可以使用以下命令来安装或升级 pandas:
pip install --upgrade pandas
此外,请确保与脚本位于同一目录中没有其他名为 pandas.py 的文件或名为 pandas 的变量。这可能会导致冲突,并阻止导入正确的 pandas 模块。
评论
0赞
sunniva
8/9/2023
谢谢,但是没有其他名为 pandas 的文件,并且 pandas 已升级。
0赞
sant chanana
8/10/2023
您可以通过在激活的环境中运行命令来共享需求文件吗?pip freeze
评论
numpy.py
import numpy
print(numpy.__file__)