在linux中编译我的程序后,我有一个名为learn的可执行文件。我正在使用Tkinter(python Tk)制作我的图形用户界面。但是当运行我的可执行代码时,它出现了一条错误消息“sh:1:learn:not found”,其中-t-c-b是传递给可执行文件的参数。

else:
        if self.binaryFeature == 0:
        cmd = "learn" + "-t " + self.type + " -c "\
                      + self.C + " " + self.e2.get() + " " + self.e3.get()
        else:
        cmd = "learn" + "-t " + self.type + " -c "\
                          + self.C + " -b 1 " + self.e2.get()\
                          + " " + self.e3.get()
        output_string = commands.getoutput(cmd)
        self.text.insert(INSERT, output_string+"\n","CprogramOutput")

执行命令时有错误吗?请帮帮我..谢谢

最佳答案

您需要在“-t”之前加一个空格:

cmd = "learn" + " -t " + self.type + " -c "\
                  + self.C + " " + self.e2.get() + " " + self.e3.get()

当前shell将命令求值为learn-t,而不是learn -t

07-28 03:06
查看更多