Lista i Python
Hej, jag behöver hjälp för att skriva ut listan baklänges och jag vet att jag skulle göra det med reverse.()
lista = [3,4.5,3,7,9,1]
Tack!
Du behöver studera range()-funktionen. Titta på den och återkom om du undrar över något.
Jag började så men det går inte..
for i in range(len(lista),-1,1,1,1):
print(lista[i])
Tillägg: 4 apr 2023 21:18
Jag tror att det är fel med nummerring, eller hur?
Ja range() tar 1,2 eller 3 argument beroende på hur det ska användas. I ditt fall behöver du använda tre-argumentsversionen. Det första argumentet är startvärdet på din iteration. Default är 0 men du kan använda det som passar. Du ska ju indexera listan och listindex börjar på 0 i det här språket. Det andra argumentet avgör den bortre änden på följden och den änden ingår inte i följden så om du skriver range(0,5.. ) så får du mängden 0:4. Det sista argumentet anger steglängden som i normala fall är 1 men du vill ju ha varannat värde så då får du ange 2 som steglängd.
I ditt exempel ovan så skriver du ut det sista talet. För att din printsats ska exekvera för varje index i din mängd så ska print-satsen indenteras.
Är det rätt nu eller?
for i in range(len(L),0,2):
print(L[i])
Nej, det stämmer inte.
Prova köra din kod, vad händer och varför tror du att du får det resultatet som du får?
Referar tillbaka till vad CurtJ nämnde ovan:
CurtJ skrev:
Ja range() tar 1,2 eller 3 argument beroende på hur det ska användas. I ditt fall behöver du använda tre-argumentsversionen. Det första argumentet är startvärdet på din iteration. Default är 0 men du kan använda det som passar. Du ska ju indexera listan och listindex börjar på 0 i det här språket. Det andra argumentet avgör den bortre änden på följden och den änden ingår inte i följden så om du skriver range(0,5.. ) så får du mängden 0:4. Det sista argumentet anger steglängden som i normala fall är 1 men du vill ju ha varannat värde så då får du ange 2 som steglängd.
Men du är väldigt nära, du har rätt siffror och allt.