首页 > 解决方案 > Python List 和 If 语句问题

问题描述

我已经创建了一个名为 listExitPrice 的列表,其中包含值。我希望将此列表分成多个其他列表,如下所示。我想通过查看什么 listExitPrice[k] 并检查它是否大于 0 来分离它,如果我想遵循其他路径。反之亦然。此代码为 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

标签: pythonlistif-statement

解决方案


在不知道您的 K 值是什么样的情况下,我只能根据错误猜测它不是整数(可用于索引数组)而是元组。您可能想打印出 listExitPrice 自己看看。


推荐阅读