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