python - 从命令提示符删除信息
问题描述
phot_bp_rp_excess_factor
我有一个代码,它使用 for 循环从某个表中提取光幅度(在本例中称为)(Bp)。
我的代码:
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])
输出/命令提示符显示:
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 来自该库。
解决方案
根据图书馆的来源,我最好的选择是它只是一个logging
记录器。
您可以使用例如降低该特定记录器的详细程度
import logging
logger = logging.getLogger("astroquery")
logger.setLevel(logging.INFO)
但总而言之,最好不要介意日志消息并将数据收集/打印阶段分开:
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()
输出:
python myscript.py > output.txt
推荐阅读
- ansible - 如何使用 ansible-playbook 将文件和文件夹复制到远程机器上的另一个文件夹?
- asp.net - 命名空间“PagedList”中不存在类型或命名空间名称“MVC”-VS 2019,MVC 5.2.7
- c++ - Qt 程序无故意外结束
- java - 对于小型数据集,收集比第一次花费更多时间
- ios - 如何在我的颤振应用中添加连续移动的背景?
- java - 使用 @SqsListener 注解为 FIFO 配置消息组 ID
- javascript - 使用 Sequlize 获取“TypeError:无法读取未定义的属性 'findAll'”
- ios - 如何在iOS中动态地在UIView中制作不同的圆角值?
- swift - T swift 数组的替代方案
- javascript - React-Native Animated.spring 回调正在延迟