You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在VS Code的.py文件中执行命令下载MNIST数据集

问题原因

你代码里带!前缀的命令是Jupyter系列工具的专属魔法语法,仅能在.ipynb格式的笔记本文件中运行,普通Python解释器不识别该语法,因此放在.py文件里运行会直接报错。

解决方案

方案1:使用Python原生模块实现(更推荐,跨平台无额外依赖)

不需要调用外部系统命令,Windows/macOS/Linux都可以直接运行,代码如下:

import urllib.request
import tarfile
import os

# 下载MNIST压缩包
url = "http://www.di.ens.fr/~lelarge/MNIST.tar.gz"
file_path = "MNIST.tar.gz"

if not os.path.exists(file_path):
    urllib.request.urlretrieve(url, file_path)

# 解压压缩包
if os.path.exists(file_path):
    with tarfile.open(file_path, "r:gz") as tar:
        tar.extractall()
    # 可选:解压完成后删除原始压缩包
    # os.remove(file_path)

方案2:通过subprocess模块调用系统命令

如果你确实需要执行系统的wget和tar命令,可以使用Python标准库的subprocess模块实现,代码如下:

import subprocess

# 执行下载命令
subprocess.run(["wget", "www.di.ens.fr/~lelarge/MNIST.tar.gz"], check=True)
# 执行解压命令
subprocess.run(["tar", "-zxvf", "MNIST.tar.gz"], check=True)

注意:该方案仅适用于自带wget、tar命令的macOS/Linux系统,Windows系统默认没有这两个命令,无法直接运行。

注意事项

  • 运行脚本前确保你对当前工作目录有读写权限,避免下载或解压失败
  • 如果链接失效,可以替换为MNIST官方的公开下载地址使用

内容的提问来源于stack exchange,提问作者user12

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 13:48:03