Описание тега python-exec

For questions about exec/eval/etc and their behavior within Python
2 ответа

Можно ли получить доступ к exec-предоставленному глобальному словарю из функции?

Можно ли получить доступ к предоставленному exec глобальному словарю изнутри функции, если функция была определена вне exec-ed кода (и, таким образом, уже привязана к другому __globals__)? Другими словами, есть ли способ заставить следующий пример р…
02 ноя '18 в 01:29
1 ответ

cx_freeze выпуск Matplotlib

Кажется, есть несколько человек, которые пытаются создать исполняемые файлы Python, использующие библиотеку Matplotlib. Я использую CX_Freeze и могу создать исполняемый файл для моего графического интерфейса без графиков, но когда добавляются график…
31 июл '17 в 09:13
1 ответ

Импорт кода из динамически созданного модуля в Python

У меня есть проект, который пытается создать новый модуль динамически, а затем в последующем exec оператор пытается импортировать этот модуль. import imp s=""" class MyClass(object): def __init__(self): pass def foo(self): pass """ mod = imp.new_mod…
04 окт '14 в 13:03
1 ответ

Как исправить это переполнение стека в этой комбинации tkinter/exec()/cffi?

У меня есть DSL на питоне, который я выполняю через exec(), Этот DSL включает вызовы собственных функций через CFFI. Я получаю переполнение стека (ТАК, вы сделали это неуправляемым!) Сбой при вызове нативной функции, которая всего 2 C вызывает глубо…
17 фев '17 в 18:54
0 ответов

Python3: как использовать exec?

Как использовать exec в пользовательских функциях? Почему функция не определена? def func(): exec('f = lambda x: x + 2') print(f(100)) if __name__ == "__main__": func() Traceback (most recent call last): File "./playground/playground.py", line 10, i…
11 фев '19 в 11:56
1 ответ

Почему я получаю "NameError: имя не определено" с exec()?

Когда я пытаюсь этот код в консоли (в PyCharm): exec("import random") exec("def f():\n\treturn random.randint(0, 10), random.randint(0, 10)") locals()['f']() это работает отлично. Но когда я пытаюсь сделать то же самое в моей программе, это не работ…
2 ответа

python3 print() в exec()

В Python3, когда я бегу >>> exec("","","") TypeError: exec() arg 2 must be a dict, not str >>> exec( "print('Hello')", print("World"), print("!") ) World ! Hello >>> type(print("World")) World <class 'NoneType'> Я им…
30 май '13 в 19:48
1 ответ

Функция exec не работает должным образом в Python 3.6

Код я написал tile1=0; player1=1; turn=player1 def s(): global tile1,turn,player1 print("Before",tile1) string='tile' + '1' # I am getting 1 by some function that's why I need to create variable string exec("%s=%d" %(string,turn)) print("After",tile…
23 сен '17 в 09:44
2 ответа

Почему генератор Python путает свою область действия с глобальной в exec'd-скрипте?

Итак, я работаю в среде, где сценарий конфигурации для инструмента является execСценарий Вызов exec выглядит примерно так: outer.py: exec(open("inner.py").read(), globals(), {}) Теперь я хочу сделать некоторые относительно основные итерации в execСц…
07 апр '13 в 18:51
2 ответа

Закрытие потеряно во время обратного вызова, определенного в exec()

Это мой третий день использования Python, так что простите ошибки новичка. Итак, вот мой рабочий код. person.test () регистрирует обратный вызов у ​​босса, босс вызывает обратный вызов, все работает нормально. class Boss: def registerCallback(self,c…
09 мар '15 в 20:00
2 ответа

Назначение в exec в Python

Я пытаюсь построить калькулятор, используя PyQt5, и я получаю строку, которую мне нужно оценить, и назначаю ее переменной, чтобы я мог передать эту переменную виджетам в качестве ответа. До сих пор я могу оценить выражение, но не могу разобрать его.…
17 май '18 в 11:57
3 ответа

listcomp не может получить доступ к локальным элементам, определенным в коде, вызываемом exec, если вложен в функцию

Существуют ли какие-либо гуру Python, способные объяснить, почему этот код не работает: def f(code_str): exec(code_str) code = """ g = 5 x = [g for i in range(5)] """ f(code) Ошибка: Traceback (most recent call last): File "py_exec_test.py", line 9,…
01 окт '15 в 19:01
4 ответа

Импорт модуля Python через Интернет / несколько протоколов или динамическое создание модуля

Это возможно import модуль Python через Интернет, используя http(s), ftp, smb или любой другой протокол? Если так, то как? Если нет, то почему? Я предполагаю, что речь идет о том, чтобы заставить Python использовать больше одного протокола (чтение ф…
0 ответов

Удаление ненужных операторов exec для улучшения скорости

Я пытаюсь реорганизовать некоторый код Python, который у меня есть. Разработчик часто использует exec Statement, но для очень простых задач, таких как temp = dict(....) exec("x_dct=" + temp) items = x_dct.items() Мой самый важный вопрос: нам нужно e…
05 янв '16 в 07:38
2 ответа

Ограничить доступ Python Exec к одному каталогу

У меня есть скрипт Python, который выполняет строку кода с функцией exec. Мне нужен способ ограничить доступ чтения / записи скрипта к текущему каталогу. Как мне этого добиться? Или есть ли способ ограничить среду скрипта python напрямую через коман…
13 сен '16 в 15:11
2 ответа

Определение метода из строки в Python 3 и ссылка на метод

У меня есть необходимость позволить пользователю определить функцию, которая обрабатывает данные в объекте (мудрость и последствия для безопасности в этом были подробно обсуждены в другом вопросе и будут просто дублирующими комментариями здесь.) Я х…
19 июл '18 в 13:42
1 ответ

Как написать скрипт Python, который может получать и выполнять команды Python?

Я довольно новичок в Python. Я пытаюсь изменить скрипт так, чтобы он работал в бесконечном цикле, получал строки кода Python из консоли и выполнял строки кода Python. Я говорю о том, что может сделать следующий пример: Shell> myconsole.py > Pr…
1 ответ

Плюсы и минусы использования exec для импорта определенного модуля?

Я хотел бы выяснить недостатки использования exec для импорта. Один из файлов служит интерфейсом для реальных реализаций определенных функций в зависимости от выбранного проекта (фреймворк предназначен для работы над несколькими проектами). Первый в…
12 фев '19 в 08:45
0 ответов

Получить переменные для использования для Exec() из другого файла

У меня есть файл класса для Python, и у меня есть команда с именем dataEnviroment() Содержимое dataEnviroment(): def dataEnviroment(): while True: try: cmd = raw_input("jData> "); if cmd == "exit": exit(); exec(cmd); except Exception as error: pr…
11 фев '18 в 04:12
0 ответов

Каков эффект компиляции при создании динамических функций?

Пока я искал создание динамических функций в Python, я получил следующий код. dynf = types.FunctionType(compile('print "really WoW"', 'dyn.py', 'exec'), {}) dynf() В качестве руководства по питону, предполагается, что использование eval и exec не ре…