使用管道与python

|
import re
import subprocess

sub = subprocess.Popen([\'/home/karthik/Downloads/stanford-parser-2011-06-   08/lexparser.csh\'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr = subprocess.PIPE)

sub.stdin.write(\"i am a fan of ac milan which is the best club in the world\")

relns = []

while(True):
    rel = sub.stdout.readline()
        m = re.search(\"Sentence skipped\", rel)

    if m != None:
            print \'stop\'
            sys.exit(0)

        if rel == \'\\n\':
                break
        relns.append(rel) 

print relns

sub.terminate()
所以我想要斯坦福解析器并使用lexparser.csh来解析这一行文本。但是,当我运行这段代码时,我得到的是默认文本的输出。给出的实际文本不会被解析。那么我使用管道的方式正确吗?我在很多示例中都已经看到-与命令一起使用\'-\'。为什么要使用它?因为我使用脚本的原因是脚本停在sub.stdout.readline()     
已邀请:
        编写后,可能需要在
sub.stdin
上调用
flush()
。     

要回复问题请先登录注册