导入错误:无法从 'utils' (/usr/local/lib/python3.7/dist-packages/utils/__init__.py) 导入名称 'translate_sentence'

时间:2021-04-29 15:16:01

标签: python import nlp google-colaboratory

我正在使用 google colab 进行 NLP。但是,当我进行导入时,我不断收到错误消息 导入错误:无法从 'utils' 导入名称 'translate_sentence' (/usr/local/lib/python3.7/dist-packages/utils/init.py) >

有什么帮助吗?这是我的进口

import torch
import torch.nn as nn
import torch.optim as optim
import spacy
from utils import translate_sentence, bleu, save_checkpoint, load_checkpoint
from torch.utils.tensorboard import SummaryWriter
from torchtext.datasets import Multi30k
from torchtext.data import Field, BucketIterator

1 个答案:

答案 0 :(得分:0)

pylint 约定要求用户导入标准库,然后是第三方库,最后是本地路径中的模块。 此外,将函数和命名空间的直接导入分开也有助于提高可读性。

所以导入顺序应该是:


import spacy
import torch
import torch.nn as nn
import torch.optim as optim

from torch.utils.tensorboard import SummaryWriter
from torchtext.datasets import Multi30k
from torchtext.data import Field, BucketIterator

from utils import translate_sentence, bleu, save_checkpoint, load_checkpoint

这并不能解决您遇到的导入问题,但它清楚地表明 utils 不是第三方库,而是执行代码时应该可见的本地文件。

复制同一文件夹中的 utils.py 文件,然后根据需要添加一个空的 __init__.py 文件。