[python] Presmerovanie stdout do okna v Tkinteri

Jan Janech devel na atlas.sk
Středa Leden 31 10:27:11 CET 2007


RMiklos na pss.sk wrote:
> Nazdar,
> Mam command-line programm, ktory pise rozne chybove hlasky cez print na 
> stdout.
> Rad by som ho prerobil do GUI v Tkinteri, ale bez toho aby som musel 
> namiesto printov vkladat tie retazce do widgetu ScrolledText,
> t.j. aby som nemusel kazdy prikaz 
>         print errormsg
> prepisovat na
>         self.textokno.insert(END, msg) 
> kde 
>         self.textokno = ScrolledText(..)
> 
> Je nejaky sposob, ako presmerovat stdout do textoveho okna?
> (napriklad podobne ako sa da stdout presmerovat do suboru?)
> Kto by mi vedel poradit?

hello,
takze nako takto:

~~~~~~~~~~~~~~~~~~~~~~~~ CODE ~~~~~~~~~~~~~~~~~~~~~~~~~
import sys

class MojPrvyStdOut:
     def write(self, s):
         sys.__stdout__.write('heh, snazis sa vypisat %r\n'%s)



sys.stdout = MojPrvyStdOut()

print 'takze... skuska... skuska... jeden, dva, tri... pocuje ma niekto?'
~~~~~~~~~~~~~~~~~~~~~~~~ /CODE ~~~~~~~~~~~~~~~~~~~~~~~~

vystup vyzera nako takto:

janik na Athlon ~ $ python xxx.py
heh, snazis sa vypisat 'takze... skuska... skuska... jeden, dva, tri... 
pocuje ma niekto?'
heh, snazis sa vypisat '\n'



hadam je vsetko jasne

Jan Janech


Další informace o konferenci Python