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

时间:2019-06-17 18:49:21

标签: python list

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

我尝试在[i]中的et之后添加et =。我还在这里查询了如何从枚举列表中获取索引,但是它们都描述了如何从原始列表中获取索引。我正在寻找一个新的索引列表。

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的列表,因为每次循环时它都会被覆盖(当您打印不缩进时,它仅给出最后一个值)。

3 个答案:

答案 0 :(得分:2)

似乎您可能只想要列表理解。像这样:

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

答案 1 :(得分:1)

ets = UTC.iloc[:, 0].apply(spice.str2et)

说明:UTC是一个熊猫数据帧,因此最好将spice.str2et()的调用广播到整个第0列,这比在执行操作时手动进行迭代(或{{ 1}},也应避免)。

答案 2 :(得分:0)

这是您要找的吗?

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

for i, txt in enumerate(n):

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