在运行.yaml文件的时候,一直出现“ModuleNotFoundError: No module named 'six'”的报错。
Traceback (most recent call last):
File "run.py", line 7, in <module>
from experiment import VAEXperiment
File "/home/pdn/peng/PyTorch-VAE-master/PyTorch-VAE/experiment.py", line 7, in <module>
from utils import data_loader
File "/home/pdn/peng/PyTorch-VAE-master/PyTorch-VAE/utils.py", line 1, in <module>
import pytorch_lightning as pl
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/__init__.py", line 20, in <module>
from pytorch_lightning.callbacks import Callback # noqa: E402
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/callbacks/__init__.py", line 26, in <module>
from pytorch_lightning.callbacks.pruning import ModelPruning
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/callbacks/pruning.py", line 31, in <module>
from pytorch_lightning.core.lightning import LightningModule
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/core/__init__.py", line 16, in <module>
from pytorch_lightning.core.lightning import LightningModule
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/core/lightning.py", line 39, in <module>
from pytorch_lightning.trainer.connectors.logger_connector.fx_validator import _FxValidator
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/trainer/__init__.py", line 16, in <module>
from pytorch_lightning.trainer.trainer import Trainer
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/trainer/trainer.py", line 30, in <module>
from pytorch_lightning.accelerators import Accelerator, IPUAccelerator
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/accelerators/__init__.py", line 13, in <module>
from pytorch_lightning.accelerators.accelerator import Accelerator # noqa: F401
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/accelerators/accelerator.py", line 26, in <module>
from pytorch_lightning.plugins.precision import ApexMixedPrecisionPlugin, NativeMixedPrecisionPlugin, PrecisionPlugin
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/plugins/__init__.py", line 8, in <module>
from pytorch_lightning.plugins.plugins_registry import ( # noqa: F401
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/plugins/plugins_registry.py", line 20, in <module>
from pytorch_lightning.plugins.training_type.training_type_plugin import TrainingTypePlugin
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/plugins/training_type/__init__.py", line 13, in <module>
from pytorch_lightning.plugins.training_type.tpu_spawn import TPUSpawnPlugin # noqa: F401
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/plugins/training_type/tpu_spawn.py", line 27, in <module>
from pytorch_lightning.loggers import LoggerCollection, TensorBoardLogger
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/loggers/__init__.py", line 18, in <module>
from pytorch_lightning.loggers.tensorboard import TensorBoardLogger
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/pytorch_lightning/loggers/tensorboard.py", line 26, in <module>
from torch.utils.tensorboard import SummaryWriter
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/torch/utils/tensorboard/__init__.py", line 12, in <module>
from .writer import FileWriter, SummaryWriter # noqa: F401
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/torch/utils/tensorboard/writer.py", line 26, in <module>
from .summary import (
File "/home/pdn/anaconda3/envs/VAE/lib/python3.7/site-packages/torch/utils/tensorboard/summary.py", line 10, in <module>
from six.moves import range
ModuleNotFoundError: No module named 'six'
说明在运行代码时遇到了一个importerror错误,导致无法导入模块six。根据错误信息,six三一个python2和python3兼容性模块,但在这个错误中,six应该是由pytorch的某个模块导入的,实际是缺少了的。
改进:
1、在整个pycharm项目文件中新建一个.py文件
2、在文件中写入
import six
3、在终端运行该文件
python ceshi.py
这样再次运行.yaml文件的时候就没有这个问题了