如何在枚举for循环中获得索引结果列表

2024-06-16 10:50:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图调用spice.str2et(n[i])获取日期列表(从excel导入的名为UTC)。我可以得到spice.str2et(n[i]),但是每次循环它都会替换以前计算的时间。相反,我需要索引列表中的所有spice.str2et(n[i])结果。(我也是Python/编码新手,3周前刚开始学习。)

我试过在我的et =中的et后面添加[i]。我还研究了如何从枚举列表中获取索引,但它们都描述了如何从原始列表中获取索引。我想建立一个新的索引列表。你知道吗

import spiceypy as spice

n = UTC.iloc[:,0] 

for i, txt in enumerate(n):

    et = spice.str2et(n[i]) #calculates ephermis time for utc, 
    print(et)

这就给了我所有我想要的ET的列表,因为它每次循环都会被覆盖(当你不打印时,它只给出最后一个值)。你知道吗


Tags: importtxt编码列表foras时间excel
3条回答
ets = UTC.iloc[:, 0].apply(spice.str2et)

说明:UTC是一个数据帧,因此最好将对spice.str2et()的调用广播到整个列0,这比在执行时手动迭代(或者.iterrows(),也应该避免)的性能更高。你知道吗

看起来你可能只是想要一份清单。比如:

n = UTC.iloc[:,0] 
newList = [spice.str2et(txt) for txt in n]

这就是你要找的吗?你知道吗

n = UTC.iloc[:,0] 
ets = []

for i, txt in enumerate(n):

    et = spice.str2et(n[i]) #calculates ephermis time for utc, 
    ets.append(et)

相关问题 更多 >