Передача знака процента в строковую переменную, представляющую магическую функцию - PullRequest
0 голосов
/ 05 декабря 2018

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

Я определяю некоторый код как строку и сохраняю в переменной, где у меня есть магияФункция начинается со знака процента.

Я передаю эту строку в другую ячейку, где я пытаюсь выполнить код, содержащийся в строке.

Знак процента, используемый в магической функции, дает мне некотороепроблемы.Знак правильно отображается в созданной строке, но выполнение прерывается в том месте, где находится %.

Вот пример:
Cell_1:

string_variable = '%dirs'

Cell_2

print(string_variable)
output:
%dirs

Cell_3

exec(string_variable)

Error: % Invalid Syntax

Я пробовал разные способы, такие как /% %%, но никтоработал.

1 Ответ

0 голосов
/ 05 декабря 2018

Python не позволит вам использовать% в функции execute, потому что он отмечает начало спецификатора (info здесь ).Если вы хотите использовать магическую функцию в записной книжке Jupiter, вам нужно импортировать функции и затем вызывать их со своей строкой.Были разные способы сделать это, но ниже один из способов.

from IPython import get_ipython
ipython = get_ipython()

string_variable = '%dirs'

ipython.magic(string_variable)

Вам следует также проверить этот вопрос .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...