在jupyter中加载CIFAR数据集时报错,提示找不见对应的文件或目录:No such file or directory: 'CIFAR-data/cifar-10-python.tar.gz

在jupyter中下载cifar数据集,代码如下:

# 下载数据
url = "http://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz"
filepath = "CIFAR-data/cifar-10-python.tar.gz"                                     #文件存储路径以及文件名

#若文件不存在,则下载该文件到指定位置;
if not os.path.isfile(filepath):
    result = urllib.request.urlretrieve(url,filepath)   # 下载数据
    print("downloaded:", result)   # 下载完成
else:                                                #文件存在
    print("The data file is existed!")    

运行结果报错,提示“No such file or directory: 'CIFAR-data/cifar-10-python.tar”,如下图所示:

在jupyter中加载CIFAR数据集时报错,提示找不见对应的文件或目录:No such file or directory: 'CIFAR-data/cifar-10-python.tar.gz_第1张图片
于是手动的在cifar数据集网站上下载相应的文件到指定路径,重新运行,但还是提示找不到文件或目录。
在jupyter中加载CIFAR数据集时报错,提示找不见对应的文件或目录:No such file or directory: 'CIFAR-data/cifar-10-python.tar.gz_第2张图片

反复检查代码,也没发现问题,手动下载和解压都是可以的。下载、解压之后再次运行,还是这个问题。
在jupyter中加载CIFAR数据集时报错,提示找不见对应的文件或目录:No such file or directory: 'CIFAR-data/cifar-10-python.tar.gz_第3张图片

上网查资料,一直以为是配置文件的问题,查了半天也不知道什么原因。
在晚上接着看的时候中发现自己犯了一个低级错误(很愚蠢),就是文件路径的问题:在Linux或者OS X中,使用绝对路径打开文件的时候应该使用斜杠/,在Windows中的时候,应该使用反斜杠\。

修改代码,再次运行:
在jupyter中加载CIFAR数据集时报错,提示找不见对应的文件或目录:No such file or directory: 'CIFAR-data/cifar-10-python.tar.gz_第4张图片

Python_报错:SyntaxError: EOL while scanning string literal
原因:python中,目录操作时,字符串的最后一个字符是斜杠,会导致出错,去掉\即可

为确保出线找不见文件或文件目录的问题,直接写成绝对路径

问题解决,可以通过代码实现cifar数据集下载与解压。
在jupyter中加载CIFAR数据集时报错,提示找不见对应的文件或目录:No such file or directory: 'CIFAR-data/cifar-10-python.tar.gz_第5张图片

你可能感兴趣的:(TensorFlow)