Python 2.7 在Jupyter笔记本中动态添加图像
假设你在笔记本上工作。通过提供文件名和标题列表,是否有一种奇特的方法来生成标记单元格以显示图像(在同一个笔记本中) 换句话说,给定一个字符串模板(带有许多占位符),说明标记单元格中应该包含的内容,是否有方法在占位符值列表上循环以生成所需的所有单元格 现在,我的懒惰方式如下(不是那么懒惰,因为它涉及到在单元格中复制/粘贴md代码)Python 2.7 在Jupyter笔记本中动态添加图像,python-2.7,jupyter-notebook,Python 2.7,Jupyter Notebook,假设你在笔记本上工作。通过提供文件名和标题列表,是否有一种奇特的方法来生成标记单元格以显示图像(在同一个笔记本中) 换句话说,给定一个字符串模板(带有许多占位符),说明标记单元格中应该包含的内容,是否有方法在占位符值列表上循环以生成所需的所有单元格 现在,我的懒惰方式如下(不是那么懒惰,因为它涉及到在单元格中复制/粘贴md代码) 从字符串导入模板 img_列表=!ls figs/start.*.png 图\u模板=模板(“”) 图$fig_idx.$capt ''' ) 对于idx,枚举中的im
从字符串导入模板
img_列表=!ls figs/start.*.png
图\u模板=模板(“”)
图$fig_idx.$capt
'''
)
对于idx,枚举中的img(img_列表,1):
打印图模板。替换(fn=img,capt=img,图idx=idx)
实际上并不相关,但您知道枚举
有一个名为开始
的只包含关键字的参数吗?您可以使用枚举(img\u list,start=1)
并使用图idx=idx
,而不是执行fig\u idx=idx+1
。知道这一点真是太好了!我在你的评论之后编辑了这个问题,thx@BakuriuNot真的很相关,但是你知道enumerate
有一个名为start
的只包含关键字的参数吗?您可以使用枚举(img\u list,start=1)
并使用图idx=idx
,而不是执行fig\u idx=idx+1
。知道这一点真是太好了!我在你的评论之后编辑了这个问题,thx@Bakuriu
from string import Template
img_list = !ls figs/start_*.png
fig_template = Template('''<figure>
<img src="$fn" alt='$capt'>
<figcaption> Figure $fig_idx. $capt</figcaption>
</figure>'''
)
for idx, img in enumerate(img_list, 1):
print fig_template.substitute(fn=img, capt=img, fig_idx=idx)