2013-07-03 2 views
2

Я абсолютно новый на Python. Вот мой вопросПодпроцесс Python OSError

import subprocess 
subprocess.call('date') 

Конечно, это не полезная программа, я пытаюсь создать что-то менее примитивное, но эта ошибка держит меня обратно.

Traceback (most recent call last): 
    File "C:\Python33\lib\subprocess.py", line 1106, in _execute_child 
    startupinfo) 
FileNotFoundError: [WinError 2] 

Раньше я использовал os.system(), результат был тем же, за исключением того, что я не получил трассировку ошибок. Я только хочу, чтобы позвонить CMD и использовать его через питон ...

При добавлении оболочки = True питон оболочка замирает

import subprocess 
subprocess.call('date',shell=True) 

кстати Я использую питон v3.3, операционная система Windows 7

+1

Существует ли «дата» в Windows? – SethMMorton

+0

Он работает, когда я помещаю его в командной строке. – Tom

+0

Является ли 'data' в вашем' PATH'? Если нет, выполняете ли вы скрипт Python в том же каталоге, что и 'data'? В противном случае вам необходимо предоставить абсолютный путь к 'data'. – shanet

ответ

0

Да, python говорит, что он не может найти файл с именем date. Если вы ищете на своем диске, вы его не найдете. «date» - это просто команда dos. Вот почему он работает в вашем командном окне Dos.

Если вы действительно хотите протестировать подпроцесс python, попробуйте subprocess.call ('notepad'), и это должно работать, потому что блокнот является допустимым исполняемым файлом, который находится на пути к окну. Любая вещь, которая не находится в пути по умолчанию, должна указывать полный путь.

Смежные вопросы