Python Проблема со списком и оператором If - PullRequest
0 голосов
/ 06 мая 2020

У меня есть список с именем listExitPrice, уже созданный со значениями в нем. Я надеялся разделить этот список на несколько других, как вы можете видеть ниже. Я хотел отделить его, посмотрев в what listExitPrice [k] и проверив, что он больше 0, если я хочу следовать по пути для else. Наоборот. Этот код дает «индексы списка должны быть целыми числами или фрагментами, а не кортежами» для первой строки оператора else. Любая помощь будет оценена по достоинству! Спасибо!

countSell = 0
countHold = 0
for k in listExitPrice:
    if k == 0:
        listBuyDateAP[countHold] = listBuyDate[k]
        listStockNameAP[countHold] = listStockName[k]
        listEntryPriceAP[countHold] = listEntryPrice[k]
        listVolumeAP[countHold] = listVolume[k]
        countHold = countHold + 1
    else:
        listBuyDatePT[countSell] = listBuyDate[k]
        listStockNamePT[countSell] = listStockName[k]
        listEntryPricePT[countSell] = listExitPrice[k]
        listVolumePT[countSell] = listVolume[k]
        listExitPricePT[countSell] = listEntryPrice[k]
        listSellDatePT[countSell] = listSellDate[k]
        countSell = countSell + 1

1 Ответ

0 голосов
/ 06 мая 2020

Не зная, как выглядят ваши значения K, я могу только догадываться на основе ошибки, что это не целое число (которое можно использовать для индексации массивов), а вместо этого кортеж. Возможно, вы захотите распечатать listExitPrice, чтобы убедиться в этом сами.

...