我建设,需要在多个文件中进行操作的功能,以下列方式:作为参数的文件列表的Python函数?
def myfuntion(filenames):
n = len(filenames)
if n > 0:
data = fits.open(filenames)
for i in range(1,n):
final = *DO SOMETHING FOR EACH FILE*
return final
的想法是使用几个文件来调用该函数:
mean_myfuntion(['file1.fits', 'file2.fits', 'file3.fits'])
然而问题是我收到以下错误:
OSError: File-like object does not have a 'write' method, required for mode 'ostream'.
而且我不确定发生了什么事。我怀疑我在调用文件名时丢失了一些东西(data = fits.open(文件名)),如果你们有任何建议,这将是非常值得欢迎的。
谢谢!
你可以添加'为每个文件做东西吗? –
[它的文档](http://astropy.readthedocs.io/en/latest/io/fits/api/files.html)中的哪些地方说它可以与文件名列表一起工作?它显然期望一次单个文件名,因此您需要遍历文件名并一次传递一个文件名。 –
看看这个线程︰https://stackoverflow.com/questions/29703939/python-pyfits-cannot-open-file –