Итак, я делаю код, который берет исторические значения указанных цен акций и возвращает список значений, подверженных риску, неважно, что это такое, проблема в следующем:
исходный список отображается следующим образом:
[['AMZN.csv', 2.289891777445866], ['BTC.csv', 5.453298793696432], ['FB.csv', 2.956361117388685], ['GOLD.csv', 1.2924516171324278], ['GOOG.csv', 2.7525367824881473], ['GSPC.csv', 2.4573561011238243], ['NFLX.csv', 3.155830089346503]]
Я хочу, чтобы элемент с наименьшим числовым значением был первым элементом (индекс 0), вторым наименьшим с его элементом в индексе 1 и так далее, вот код, который я пробовал до сих пор:
smallestValue=varList[0][1]
smallestIndex=0
smallestElement=varList[smallestIndex]
for q in range(len(varList)):
currentSymbol=varList[q][1]
if currentSymbol <= smallestValue and varList[q] != smallestElement:
smallestValue=currentSymbol
smallestIndex=q
smallestElement=varList[q]
print(smallestElement)
varList.pop(smallestIndex)
varList.insert(0,smallestElement)
print(varList)
q-=1
Он печатает следующее:
['GOLD.csv', 1.2924516171324278]
[['GOLD.csv', 1.2924516171324278], ['AMZN.csv', 2.289891777445866], ['BTC.csv', 5.453298793696432], ['FB.csv', 2.956361117388685], ['GOOG.csv', 2.7525367824881473], ['GSPC.csv', 2.4573561011238243], ['NFLX.csv', 3.155830089346503]]
Я знаю, что решение, вероятно, очень простое. но мой крайний срок - день, и, как нормальный человек, я откладываю это на вчерашний день и всю ночь пишу код, сейчас я заблокирован, хе-хе.