2024-05-16 09:08:15 发布
网友
所以现在-我的Python程序(在UNIX环境中)可以保存文件。
fig.savefig('forcing' + str(forcing) + 'damping' + str(damping) + 'omega' + str(omega) + 'set2.png')
我如何在不切换目录的情况下将其保存到新目录中?我想将文件保存在Pics2/forcing3damping3omega3set2.png这样的目录中。
我假设您正在使用pylab(matplotlib)。
pylab
matplotlib
可以使用完整路径作为savefig(fname, ...)的fname参数,该参数可以是/path/to/your/fig.png之类的绝对路径,也可以是relative/path/to/fig.png之类的相对路径。您应该确保保存文件的目录已经存在。如果不先使用os.makedirs创建它:
savefig(fname, ...)
fname
/path/to/your/fig.png
relative/path/to/fig.png
os.makedirs
import os ... # create the fig dir = 'path/to/Pics2' if not os.path.isdir(dir): os.makedirs(dir) fname = 'forcing' + str(forcing) + 'damping' + str(damping) + 'omega' + str(omega) + 'set2.png' fig.savefig(os.path.join(dir, fname))
通过使用完整或相对路径。您只指定了一个文件名,没有路径,这意味着它将保存在当前目录中。
要将文件保存在相对于当前目录的Pics2目录中,请使用:
Pics2
fig.savefig('Pics2/forcing' + str(forcing) + 'damping' + str(damping) + 'omega' + str(omega) + 'set2.png')
或者更好的方法是,使用os.path.join()和字符串格式构造路径:
os.path.join()
fig.savefig(os.path.join(('Pics2', 'forcing{0}damping{1}omega{2}set2.png'.format(forcing, damping, omega)))
最好使用绝对路径:
path = '/Some/path/to/Pics2' filename = 'forcing{0}damping{1}omega{2}set2.png'.format(forcing, damping, omega) filename = os.path.join(path, filename) fig.savefig(filename)
您可以将文件名与完整路径连接,以便将其保存在特定位置而不是当前目录中:
import os filename = "name.png" path = "/path/to/save/location" fullpath = os.path.join(path, filename)
使用os.path.join将以独立于平台的方式正确处理分隔符。
os.path.join
我假设您正在使用
pylab
(matplotlib
)。可以使用完整路径作为
savefig(fname, ...)
的fname
参数,该参数可以是/path/to/your/fig.png
之类的绝对路径,也可以是relative/path/to/fig.png
之类的相对路径。您应该确保保存文件的目录已经存在。如果不先使用os.makedirs
创建它:通过使用完整或相对路径。您只指定了一个文件名,没有路径,这意味着它将保存在当前目录中。
要将文件保存在相对于当前目录的
Pics2
目录中,请使用:或者更好的方法是,使用
os.path.join()
和字符串格式构造路径:最好使用绝对路径:
您可以将文件名与完整路径连接,以便将其保存在特定位置而不是当前目录中:
使用
os.path.join
将以独立于平台的方式正确处理分隔符。相关问题 更多 >
编程相关推荐