将IPython变量作为参数传递给bash命令

2024-05-20 00:39:12 发布

您现在位置:Python中文网/ 问答频道 /正文

如何从I python/Jupyter notebook执行bash命令,将python变量的值作为参数传递,如下例所示:

py_var="foo"
!grep py_var bar.txt

(显然我想用grep表示foo,而不是文本字符串py_var


Tags: 字符串py文本命令txtbashfoovar
2条回答

在变量名前面加上$

示例

假设要将文件file1复制到存储在名为dir_pth的python变量中的路径:

dir_path = "/home/foo/bar"
!cp file1 $dir_path

从Ipython或Jupyter笔记本

编辑

由于Catbuilts的建议,如果要连接多个字符串以形成路径,请使用{..},而不是$..$。 在这两种情况下都有效的一般解决方案是坚持{..}

dir_path = "/home/foo/bar"
!cp file1 {dir_path}

如果要将另一个字符串sub_dir连接到您的路径,则:

!cp file1 {dir_path + sub_dir}

您也可以使用此语法:

path = "../_data/"
filename = "titanicdata.htm"
! less {path + filename}

相关问题 更多 >