170 похожих чатов

Как в ast получить из кода все классы, а затем

- все переменные, заданные в классе?

18 ответов

7 просмотров

Речь про builtin модуль ast?

Oleksandr-dntPanix Автор вопроса
Michael Pokrovsky
Речь про builtin модуль ast?

да, про негож родимого

Oleksandr dntPanix
да, про негож родимого

А не проще через inspect делать?

Oleksandr-dntPanix Автор вопроса
Michael Pokrovsky
Inspect.getmembers(...) и алга

https://docs.python.org/3/library/inspect.html

Oleksandr-dntPanix Автор вопроса
Michael Pokrovsky
Inspect.getmembers(...) и алга

там надо сам модуль импортнуть, во всяком случае в первых найденых примерах. А без импорта inspect умеет?

Oleksandr dntPanix
да

Тогда через пройтись по нодам после построения дерева, и проверить сначала на ClassDef, потом на Name наверно, вообще лучше глянуть как дерево построено будет сначала, думаю, там станет понятнее

Oleksandr-dntPanix Автор вопроса
Michael Pokrovsky
Тогда через пройтись по нодам после построения дер...

в том и затык, чего то сначала идут класс дефы, потом - ассигны (присвоения переменным) вот фрагмент принта обхода ast: name TFC_CheckLinks name TFC_Login name TFC_Logout name TFC_CheckLoggerOutSession {'JIRA_ZEPYHR_TESTCASE': 'MYA-3123'} {'JIRA_ZEPYHR_TESTCASE': 'MYA-2176'} {'JIRA_ZEPYHR_TESTCASE': 'MYA-3106'}

Oleksandr-dntPanix Автор вопроса
Michael Pokrovsky
Тогда через пройтись по нодам после построения дер...

а если if node.__class__.__name__ == "Assign" загнать внутрь ифа на "ClassDef" - тогда вообще не відает ниче

Oleksandr dntPanix
а если if node.__class__.__name__ == "Assign" за...

может сделать exec в каком-нибудь scope, а там уже через inspect? scope = {} exec(expr, scope)

Michael Pokrovsky
может сделать exec в каком-нибудь scope, а там уже...

Использование exec, eval крайне небезопасно в коде

Похожие вопросы

Обсуждают сегодня

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
Хотел бы спросить у знающих, правильную ли я выбрал книгу для начала изучения ассемблера Юрова В.И ? Или есть более лучшие книги для начала обучения?
Botsman
31
$params = [ 'formid' => 'feedbackForm', 'formTpl' => '@CODE: <form class="form-validate" data-id="ajax_form"> <fieldset class="margin-bottom-md"> ...
Pathologic
1
Здравствуйте. Задача состоит в том, чтобы сделать real-time чат в мобильном приложении. После передачи сообщения пользователем через веб-сокеты, для основного и долговременног...
🐾
5
Где можно найти примеры эффективного "асинхронного" tcp сервера на C? Я видел select, kqueue, poll, epoll и т.д. Ввод-вывод неблокирующий, но обработка клиентов блокирующая
#
10
Книга Юрова В.И пойдёт для обучения?
Botsman
24
Всем доброго дня, ребят подскажите пожалуйста, если в курсе по ассемблеру используется MASM32, могу ли я использовать FASM? В чем явная разница и будет ли у меня все работать?
Botsman
17
Hi Everyone! To all Are you Looking for Interview Support at the Lowest Price? Look no further! Then contact us 👉We offer Interview Support :-for a low cost variety of tech...
Rambabu Nallamilli
3
Hello experts, Could someone kindly tell me how to run vacuum inside a plpgsql function? If you have any link please share. Thank you
Amol Palav
10
И ещё вопрос: можно ли типа как на дос как-то запариться и с помощью прерываний выводить текст, вместо функции printf ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
34
Карта сайта