使用 sherlock 通过 python 子流程模块检查是否存在抄袭
Using sherlock to check for plagiarism through python subprocess module
当我在终端上写的时候:
./sherlock *.txt
有效
但是当我尝试使用 python 子进程做同样的事情时
import subprocess
subprocess.call(['./sherlock','*.txt'])
import subprocess
subprocess.call('./sherlock','*.txt',shell=True)
import subprocess
subprocess.call('./sherlock','*.txt',shell=False)
这两个都不行,请帮忙。
Shell展开*
,subprocess.call
不展开。使用 glob.glob
.
自行扩展 *
除此之外,表示要发出的命令的参数应该是列表或字符串对象(而不是多个参数)。
import glob
import subprocess
subprocess.call(['./sherlock'] + glob.glob('*.txt'), shell=False)
当我在终端上写的时候:
./sherlock *.txt
有效
但是当我尝试使用 python 子进程做同样的事情时
import subprocess
subprocess.call(['./sherlock','*.txt'])
import subprocess
subprocess.call('./sherlock','*.txt',shell=True)
import subprocess
subprocess.call('./sherlock','*.txt',shell=False)
这两个都不行,请帮忙。
Shell展开*
,subprocess.call
不展开。使用 glob.glob
.
*
除此之外,表示要发出的命令的参数应该是列表或字符串对象(而不是多个参数)。
import glob
import subprocess
subprocess.call(['./sherlock'] + glob.glob('*.txt'), shell=False)