Slide 19
Slide 19 text
Byte-code
19
Задача преобразования кода
автор tg: @PyotrAndreev
?
Какой-то код
***.pyc ***.py
Byte-code
# CPython 3.11.13 [GCC 11.4.0]
def main(): # строка 1
a = 5 # строка 2
b = 10 # строка 3
return a + b # строка 4
1. Lexer токенизирует код: tokenize
2. Parser строит построение AST Abstract Syntax Trees: ast
3. построение символьной таблицы
a (идентификатор), = (оператор присваивания), 5 (целое число),
b (идентификатор), = (оператор присваивания), 10 (целое число),
c (идентификатор), = (оператор присваивания), a (идентификатор), + (оператор сложения), b (идентификатор),
print (функция), ( (открывающая скобка), c (идентификатор), ) (закрывающая скобка)
a = 5
b = 10
c = a + b
print(c)
Пример
Токены