为什么下载了d2l包,命令行执行from f2l import torch as d2l不会报错,但是jupyter一直显示module 'torch' has no attribute 'plot'
Jupyter使用的Python环境和命令行使用的Python环境不同。
根据问题描述,可以猜测是因为导入torch后,d2l包中的plot函数出现了命名冲突。可以尝试使用完整的包名调用d2l中的plot函数,即d2l.plot,或者给torch重新起一个别名,使其不与d2l的plot函数冲突。
在jupyter中执行以下代码即可:
import d2l
import torch as t
d2l.plot(x, [normal(x, mu, sigma) for mu, sigma in params], xlabel='x',
ylabel='p(x)', figsize=(4.5, 2.5),
legend=[f'mean {mu}, std {sigma}' for mu, sigma in params])
或者使用别名:
import torch as t
import d2l
d2l.plot(x, [normal(x, mu, sigma) for mu, sigma in params], xlabel='x',
ylabel='p(x)', figsize=(4.5, 2.5),
legend=[f'mean {mu}, std {sigma}' for mu, sigma in params])