Передача переменных IPython в качестве аргументов для команд bash
Как выполнить команду bash из ноутбука Ipython/Jupyter, передав значение переменной python в качестве аргумента, подобного в этом примере:
py_var="foo"
!grep py_var bar.txt
(очевидно, я хочу, чтобы grep для foo, а не буквальная строка py_var)
Ответ 1
Префикс ваших имен переменных с $.
пример
Допустим, вы хотите скопировать файл file1 в путь, хранящийся в переменной python с именем dir_pth:
dir_path = "/home/foo/bar"
!cp file1 $dir_path
из записной книжки Ipython или Jupyter
РЕДАКТИРОВАТЬ
Благодаря предложению Catbuilts, если вы хотите объединить несколько строк для формирования пути, используйте {..} вместо $..$. Общее решение, которое работает в обеих ситуациях - придерживаться {..}
dir_path = "/home/foo/bar"
!cp file1 {dir_path}
И если вы хотите объединить другую строку sub_dir с вашим путем, то: