Использование sherlock для проверки на плагиат через модуль подпроцесса python
Когда я пишу на терминале:
./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)
Ничего из этого не работает, пожалуйста, помогите.
1 ответ
Решение
Shell расширить *
, subprocess.call
не. Разверните *
вы используете glob.glob
,
Кроме того, аргумент, представляющий команду, которая должна быть выдана, должен быть списком или строковым объектом (а не несколькими аргументами).
import glob
import subprocess
subprocess.call(['./sherlock'] + glob.glob('*.txt'), shell=False)