Jupyter導入.py錯誤

Jupyter導入.py錯誤

我正在嘗試導入 jupyter 筆記本中的 .py 檔案。

import torch
from torch import Tensor
import dlc_practical_prologue as prologue

這就是我得到的錯誤。 dlc_practical_prologue.py 位於同一目錄中。我正在使用虛擬盒子。

usage: ipykernel_launcher.py [-h] [--full] [--tiny] [--force_cpu]
                             [--seed SEED] [--cifar] [--data_dir DATA_DIR]
ipykernel_launcher.py: error: unrecognized arguments: -f /run/user/1000/jupyter/kernel-3640175e-3052-4216-9c84-6be6f65474e4.json
An exception has occurred, use %tb to see the full traceback.

SystemExit: 2


/home/dave/miniconda3/lib/python3.6/site-packages/IPython/core/interactiveshell.py:2918: UserWarning: To exit: use 'exit', 'quit', or Ctrl-D.
  warn("To exit: use 'exit', 'quit', or Ctrl-D.", stacklevel=1)

答案1

您無法匯入具有argparse全域命名空間的檔案。

例如,您可能有以下程式碼dlc_practical_prologue.py

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--seed', default=1, type=int)
opt = parser.parse_args()
train(opt)

您應該將程式碼移至if語句下:

if __name__ == '__main__':
    import argparse
    parser = argparse.ArgumentParser()
    parser.add_argument('--seed', default=1, type=int)
    opt = parser.parse_args()
    train(opt)

相關內容