首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从命令提示符中删除信息

从命令提示符中删除信息
EN

Stack Overflow用户
提问于 2021-06-01 05:16:32
回答 1查看 42关注 0票数 0

我有一个代码,它使用for循环从某个表中提取光的大小(在本例中称为phot_bp_rp_excess_factor) (Bp)。

我的代码:

代码语言:javascript
复制
coord =SkyCoord(table["ra"], table["dec"], frame="icrs", unit="deg")

for i in coord:
    r= Gaia.query_object_async(coordinate=i, width = u.Quantity(0.0005, u.deg), height=u.Quantity(0.0005, u.deg))
    bp=[r["phot_bp_rp_excess_factor"]]
    print (bp[-1]) 

输出/命令提示显示:

代码语言:javascript
复制
INFO: Query finished. [astroquery.utils.tap.core]
phot_bp_rp_excess_factor
------------------------
11.4

INFO: Query finished. [astroquery.utils.tap.core]
phot_bp_rp_excess_factor
------------------------
14.4
...

然而,我只需要这个数字,在这个例子中,11.4和14.4。我不希望它每次做循环时都说" INFO: Query finished. [astroquery.utils.tap.core]" phot_bp_rp_excess_factor,因为我正试图创建一个列表/数组,显示我的轻量级数字。有人知道怎么做吗?

编辑:我不知道这些信息是否与解决问题相关,但是这里我使用的是Astropy库,Skycoord来自那个库。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-01 05:26:22

基于图书馆资源的最佳选择是它只是一个logging记录器。

你可以把详细的为那个特定的记录器。

代码语言:javascript
复制
import logging
logger = logging.getLogger("astroquery")
logger.setLevel(logging.INFO)

但总而言之,最好不要介意日志记录消息,并将数据收集/打印阶段分开:

代码语言:javascript
复制
coord = SkyCoord(table["ra"], table["dec"], frame="icrs", unit="deg")

data = []

for i in coord:
    r = Gaia.query_object_async(
        coordinate=i,
        width=u.Quantity(0.0005, u.deg),
        height=u.Quantity(0.0005, u.deg),
    )
    bp = r["phot_bp_rp_excess_factor"]
    data.append((i, bp))

for i, bp in data:
    print(i, bp)  # Or whichever formatting you'd like

此外,日志数据通常会转到标准错误流,而不是标准输出流,因此,如果您从命令行运行程序,您只需重定向到一个文件,并且只能获得print()输出:

代码语言:javascript
复制
python myscript.py > output.txt
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67783065

复制
相关文章

相似问题

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