如何用Python保存一个文件,文件名在i中有斜杠

2024-03-29 04:39:06 发布

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

我在一个元组中循环使用一系列名称,我希望在每次循环期间使用元组数据作为文件名保存输出。但是名字上有斜杠。在

layers = ['conv1/7x7_s2','pool1/3x3_s2']
for idx,layer in enumerate(layers):
    result=deepdream(net, img, end=layer)
    imag = PIL.Image.fromarray(result,'RGB')
    imag.save('files/'+str(layer)+'.png')

包含numpy结果的数组 图像就是图像 层是我想要的文件名

但是,斜杠被解释为目录分隔符 有没有办法将图像另存为 转换1/7x7_s2.png

还是把斜线改成破折号?在


Tags: 数据图像名称layerpng文件名layersresult
3条回答

当目录结构被定义时,不能。因为linux系统将/解析为目录树的一个组件。您只需将斜杠改为短划线或下划线。在

这些字符都不能用在文件名中(至少不能在Windows文件系统中):\/:*?"<>和{}。它们都有特定的交替含义。在

也没有转义符或其他方法-您只需在文件名中省略或替换这些字符。在

是的,有一些保留“斜杠”的复杂方法,但它们可能不值得(即使用unicode除法斜杠)。在

layers = ['conv1/7x7_s2','pool1/3x3_s2']
for idx, layer in enumerate(layers):
    print(layer.replace('/', '_'))
    # or maybe this might work?
    # print(layer.replace('/', u"\u2215"))

相关问题 更多 >