奇奇怪怪re 2022-03-30 20:42 采纳率: 0%
浏览 1706

TypeError: Instance and class checks can only be used with @runtime_checkable protocols怎么解决

问题遇到的现象和发生背景

Pytorch中使用DataLoader报错:TypeError: Instance and class checks can only be used with @runtime_checkable protocols该怎么解决

问题相关代码,请勿粘贴截图
import torchvision
from torch.utils.data import DataLoader

dataset_transform = torchvision.transforms.Compose([
    torchvision.transforms.ToTensor()
])
test_data = torchvision.datasets.CIFAR10("./dataset", False, dataset_transform)
test_loader = DataLoader(dataset=test_data, batch_size=4, shuffle=True, num_workers=0, drop_last=False)
运行结果及报错内容
Traceback (most recent call last):
  File "/home/parallels/Desktop/learn-pytorch2/one.py", line 8, in <module>
    test_loader = DataLoader(dataset=test_data, batch_size=4, shuffle=True, num_workers=0, drop_last=False)
  File "/home/parallels/anaconda3/envs/pytorch/lib/python3.10/site-packages/torch/utils/data/dataloader.py", line 200, in __init__
    if isinstance(dataset, IterableDataset):
  File "/home/parallels/anaconda3/envs/pytorch/lib/python3.10/typing.py", line 1469, in __instancecheck__
    raise TypeError("Instance and class checks can only be used with"
TypeError: Instance and class checks can only be used with @runtime_checkable protocols

Process finished with exit code 1
我的解答思路和尝试过的方法

在网上没有找到解决方案

我想要达到的结果
  • 写回答

4条回答 默认 最新

  • 瓜皮盐 2022-04-02 18:05
    关注

    我也遇到了这个问题,本来用的是python3.10,回退成3.7没这个问题了。猜测是版本升级导致的不兼容问题。

    评论

报告相同问题?

问题事件

  • 修改了问题 3月30日
  • 修改了问题 3月30日
  • 创建了问题 3月30日