Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 21, 2018 00:29:05

ss100s
Зарегистрирован: 2016-02-29
Сообщения: 33
Репутация: +  0  -
Профиль   Отправить e-mail  

try except

Не вижу где ошибка.

 import subprocess
import sys
num = 3
while num > 0:
    try:
        p = subprocess.Popen('/bin/date, shell = True, stdout = subprocess.PIPE')
        output = p.communicate()[0]
        print output
        print 'ok'
    except Exception:
        print 'error'
    num=num-1
        
    if num == 0:
        print 'exit'
        sys.exit() 
out
Вроде должно писать “ok”. А отдает:
 error
error
error
exit

Офлайн

#2 Апрель 21, 2018 04:13:58

delvin-fil
Зарегистрирован: 2015-11-27
Сообщения: 95
Репутация: +  4  -
Профиль   Отправить e-mail  

try except

А зачем subprocess'ом то?



 import __hello__

Офлайн

#3 Апрель 21, 2018 08:43:35

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

try except

1. Если вы хотите отдать командную строку то надо писать shell=True
2. Не уверен, но сомневаюсь что ваша программа ожидает аргумент командной строки shell=True



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version