SORU
29 HAZİRAN 2012, Cuma


Nasıl Python 2.7 alt işlemi çıkış gizlemek için

Ubuntu eSpeak kullanarak ve bir Piton var ve bir mesaj yazdırır konuşan 2.7 script ediyorum:

import subprocess
text = 'Hello World.'
print text
subprocess.call(['espeak', text])

eSpeak istenen sesler üretir, ama bazı hatalar ile kabuk clutters (ALSA lib..., soket Bağlan) kolayca önceki basılmış ne olduğunu okuyamıyorum. Çıkış kodu 0'dır.

Ne yazık ki onun ayrıntı kapatmak için belgelenmiş seçenek yok, bir şekilde sadece görsel olarak sessizlik ve daha fazla etkileşim için açık kabuk temiz tutmak için arıyorum.

Bunu nasıl yapabilirim?

CEVAP
29 HAZİRAN 2012, Cuma


DEVNULL çıktı yönlendirin:

import os
import subprocess

FNULL = open(os.devnull, 'w')
retcode = subprocess.call(['echo', 'foo'], stdout=FNULL, stderr=subprocess.STDOUT)

Etkin bir şekilde bu kabuk komutu çalıştırmak aynıdır:

retcode = os.system("echo 'foo' &> /dev/null")

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Air_Fooj

    Air_Fooj

    24 NİSAN 2009
  • Juan Carlos Candela Bordera

    Juan Carlos

    4 Mart 2009
  • xXGAMERrs_Xx

    xXGAMERrs_Xx

    31 Temmuz 2014