我正在尝试执行一个程序,但是使用神经网络基于葡萄酒数据集给出了错误

问题描述

我正在尝试执行一个程序,但是该程序基于使用神经网络的葡萄酒数据集给出错误

import numpy as np 
import pandas as pd 
import matplotlib.pyplot as plt
from subprocess import check_output
print(check_output(["ls","../input"]).decode("utf8"))

我收到错误消息'CalledProcessError'

<ipython-input-8-846d8ac0593c> in <module>()
      3 import matplotlib.pyplot as plt
      4 from subprocess import check_output
----> 5 print(check_output(["ls","../input"]).decode("utf8"))

1 frames
/usr/lib/python3.6/subprocess.py in run(input,timeout,check,*popenargs,**kwargs)
    436         if check and retcode:
    437             raise CalledProcessError(retcode,process.args,--> 438                                      output=stdout,stderr=stderr)
    439     return CompletedProcess(process.args,retcode,stdout,stderr)
    440 

CalledProcessError: Command '['ls','../input']' returned non-zero exit status 2.```

解决方法

如果您的被调用进程返回了任何非零的退出代码,则会引发CalledProcessError。

如果在您的python代码中还可以,则可以除CalledProcessError之外,并从其属性(尤其是输出属性)中获取任何信息。 (在python docs中查找此错误,以获取更多信息。)

import subprocess
output = None
try:
    output = subprocess.check_output(["ls","../input"]).decode("utf8")
except subprocess.CalledProcessError as e:
    output = e.output

然后您可以打印这些输出。