我在PyTorch和Matplotlib中看到了这种约定:
import torch.nn as nn
import torch.optim as optim
import matplotlib.pyplot as plt
为什么要将整个路径(module.submodule
)作为别名导入,而不只是导入子模块?如果像这样导入有什么区别:
from torch import nn
from torch import optim
from matplotlib import pyplot as plt
编辑: 对于通用情况:
import foo.bar as bar # [1]
from foo import bar # [2]
是否存在能够引用bar
并且在使用[1]
时可以运行但使用[2]
时不行(反之亦然)的代码?也就是说,这两种导入方式之间是否存在功能上的区别?