小编Hao*_*ang的帖子

调用包含“echo”和“|”的命令行

我尝试使用Python调用命令行来执行一些文件。但是,当有一个包含echo和的命令行时|subprocess.call似乎效果不佳。就像我跑步时一样:

echo "perp -t ../data/ReviewTest.text" | ./eva -b ../data/6.binlm
Run Code Online (Sandbox Code Playgroud)

我会得到我想要的。但是,当我尝试这样做时:

import subprocess
e=["echo","\"perp", "-t", "../data/R.text\"", "|", "./eva", "-b", "../data/6.binlm"]
subprocess(e)
Run Code Online (Sandbox Code Playgroud)

除了在命令行中显示的 echo 之外,我将获得所有内容,例如:

".prep -t ..data/ReviewTest.text" | ./eva -b ../data/6.binlm
Run Code Online (Sandbox Code Playgroud)

似乎在 中subprocess.call(),当有 时echo,它之后的所有内容都会被抛出到命令行中。

我希望subprocess当命令同时包含echo和时有一些解决方案可供我使用|

python shell subprocess

5
推荐指数
1
解决办法
7769
查看次数

python lasagne ImportError无法导入BatchNormLayer

当我尝试在这里玩代码时,我遇到了一个非常奇怪的错误.除了一个模块外,每个其他模块都可以正确导入.

具体来说,错误是:

ImportError: cannot import name BatchNormLayer
Run Code Online (Sandbox Code Playgroud)

来自这里的文件.而lasagne_extensions.layers如下:

from .density_layers import *
from lasagne.layers import *
from parmesan.layers import *
Run Code Online (Sandbox Code Playgroud)

所以,我认为问题应该是我没有安装lasagneparmesan正确.

我曾尝试升级相关的模块,包括numpy,scipy,theanolasagne到最新版本pip install --upgrade分别.没有pip install支持parmesan,所以我下载并重新安装.但是,错误仍然存​​在.

谁能给我一些关于我应该研究什么的建议?

python-2.7 theano lasagne

5
推荐指数
1
解决办法
5182
查看次数

Weka 异常:未指定来源

我正在尝试从 ubuntu 命令行使用 weka,但是,当我执行以下命令时:

java -cp ./weka.jar weka.classifiers.trees.J48 -t /data/iris.ARFF
Run Code Online (Sandbox Code Playgroud)

然后,我得到

Weka exception: No source has been specified    
Run Code Online (Sandbox Code Playgroud)

后面有详细的用法说明,但我不认为我用错了,因为所有网站都在谈论以这种方式使用WEKA。

有人可以帮我解决这个问题吗?

先谢谢了。

java ubuntu command-line machine-learning weka

4
推荐指数
1
解决办法
7328
查看次数

为什么python在某些情况下不能判断1.0等于1,而其他情况可以?

有一个python代码如下:

import sys
import fileinput, string
K = 3
f = raw_input("please input the initial "+str(K)+" lamba: ").split()

Z = []
sumoflamba = 0.0
for m in f:
    j = m.find("/")
    if j!=-1:
            e=float(m[:j])/float(m[j+1:])
    else:
            e = float(m)
    sumoflamba+=e
    if e==0:
            print "the initial lamba cannot be zero!"
            sys.exit()
    Z.append(e)
print sumoflamba
if sumoflamba!=1:
    print "initial lamba must be summed to 1!"
    sys.exit()
Run Code Online (Sandbox Code Playgroud)

当我用 0.7、0.2、0.1 运行它时。它将打印警告并退出!但是,当我使用 0.1、0.2、0.7 运行它时。它工作正常。0.3、0.3、0.4 也可以正常工作。我不知道......有人可以解释一下吗?对于所有这些情况,“print sumoflamda”将给出 1.0。

python

0
推荐指数
1
解决办法
1197
查看次数