所以現在 - 我的Python程序(在UNIX環境中)可以保存文件。Python:如何將文件保存在不同的目錄中?
fig.savefig('forcing' + str(forcing) + 'damping' + str(damping) + 'omega' + str(omega) + 'set2.png')
如何在不切換目錄的情況下將其保存在新目錄中?我想將這些文件保存在像Pics2/forcing3damping3omega3set2.png這樣的目錄中。
所以現在 - 我的Python程序(在UNIX環境中)可以保存文件。Python:如何將文件保存在不同的目錄中?
fig.savefig('forcing' + str(forcing) + 'damping' + str(damping) + 'omega' + str(omega) + 'set2.png')
如何在不切換目錄的情況下將其保存在新目錄中?我想將這些文件保存在像Pics2/forcing3damping3omega3set2.png這樣的目錄中。
通過使用完整或相對路徑。你只是指定一個文件名,沒有路徑,這意味着它將被保存在當前目錄中。
要保存Pics2
目錄中的文件,從當前目錄相對的,使用方法:
fig.savefig('Pics2/forcing' + str(forcing) + 'damping' + str(damping) + 'omega' + str(omega) + 'set2.png')
或者更好的是,構建具有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
將妥善處理分離,獨立於平臺的方式。
我假設您正在使用pylab
(matplotlib
)。
可以使用全路徑作爲參數fname
的savefig(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))