python - ImportError:无法从“utils”(/usr/local/lib/python3.7/dist-packages/utils/__init__.py)导入名称“translate_sentence”
问题描述
我正在使用 google colab 进行 NLP。但是,当我进行导入时,我不断收到错误 ImportError: cannot import name 'translate_sentence' from 'utils' (/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
解决方案
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
根据需要添加一个空文件。
推荐阅读
- python - 弹性搜索:用于匹配自动完成建议器中字符串列表中最长字符串的正则表达式
- r - 同一轴上的两个分类变量(不相互连接)
- python - Sqlite - 无法在关闭的数据库上操作
- jquery - 通过 jquery ajax 将 jwt 令牌存储在本地存储中
- window - Win 注册表 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\{CODE} 中使用的 {CODE} 是什么?
- javascript - 寻找 javscript eval 函数的替代方案
- python - 在 IPython 中使用 memit 魔术时返回一个 MemitResult 对象和一个函数调用
- sql - SSIS 条件拆分拒绝文件
- python - 修复交互式图表中的轴比例
- gcc - 如何使用 arm-none-eabi-gcc 为 ARM 项目创建和链接静态库?