0
我一直在教自己的python,目前我试图循环访问一个astropy表,并替换在第二列中具有特定值的任何行。我可以编写一个完成此操作的脚本,但不是不使用虚拟索引来跟踪我所处的行。循环遍历表并删除行而不使用对象索引
for value in my_list:
k=0
for row in data_table:
if value == row[1]:
data_table.remove_row(k)
data_table.add_row([replacement_row])
k+=1
else:
k+=1
什么我不知道是是否存在有没有row.index()属性或类似的,将允许一些我写
for value in my_list:
for row in data_table:
if value == row[1]:
data_table.remove_row(row.index())
data_table.add_row([replacement_row])
原代码我已经写了没有按” t看起来是最pythonic的方式。
是什么类型'row'做些什么呢?列表有一个你可以利用的'index'方法。顺便说一句,从你正在迭代的东西中删除(在迭代时改变形状)通常是一个糟糕的想法。 –
当我在for循环中运行print(type(row))'时,它打印出'。 –
user144153