Page 255 - 6734
P. 255

code = text.get("1.0", "end-1c") # отримати текст із
           текстового віджету
           text.delete("1.0", "end") # видалити весь текст із
           текстового віджету

           # перший спосіб:
           from pygments import highlight # повертає
           відформатований текст
           for line in highlight(code, PythonLexer(),
           RawTokenFormatter()).split("\n"): # для кожного рядка
           тексту, відформатованого за допомогою PythonLexer()
           та RawTokenFormatter()
               pair=line.split("\t") # розділити рядок символом
           табуляції
               if pair!=['']: # якщо пара не пуста
                   (token, s) = pair
                   print token, eval(s) # вивести на консоль
                   text.insert("end", eval(s), token) # вставити
           текст із тегом у віджет

           # другий спосіб:
           #from pygments import lex # лексичний аналізатор,
           повертає ітератор токенів
           #for token, content in lex(code, PythonLexer()):
           #    print token, content
           #    text.insert("end", content, str(token))

           root.mainloop() # головний цикл програми







                             Рисунок 60 – Вікно програми

                                         254
   250   251   252   253   254   255   256   257   258   259   260