首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从bz2打开fits文件

从bz2打开fits文件
EN

Stack Overflow用户
提问于 2015-01-26 15:48:02
回答 1查看 441关注 0票数 1

所以我有一个压缩的fits文件,我是这样读的:

代码语言:javascript
运行
复制
File = bz2.BZ2File(fname)
fits = File.read()

我正在使用astropy.io.fits读取fits文件。目前,我通过api获取.fits.bz2文件,因此理想情况下,我希望能够像hdulist = fits.open(fit)一样读取它们。

但它只是抛出了TypeError: must be encoded string without NULL bytes, not str。(我已经通过手动解压并像上面一样读取来检查文件是否正确)。

我想我的问题很普遍:如何将打开的文件传递给另一个函数?

EN

回答 1

Stack Overflow用户

发布于 2015-01-26 18:45:33

astropydocumentation中,您可以找到:

astropy.io.fits.open以文件名、打开的文件或类似文件的对象作为其第一个参数

您正在尝试将文件中的内容传递到astropy中,而不是传递到文件对象本身。

要让您的示例正常工作,您只需要将bz2返回的文件对象传递给astropy,后者会像处理未压缩文件一样对其进行处理。

代码语言:javascript
运行
复制
from astropy.io import fits
import bz2

decompressed_file = bz2.BZ2File("example.fits.bz2")
hdulist = fits.open(decompressed_file)
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28146302

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档