Sätt in element från en lista i en annan med rätt ordning
Förstår inte varför den inte funkar?
Den borde ju kalla på funktionen ovanför och lägga in element i out i ordning. Ser att det står 'list' object cannot be interpreted as an integer, men jag har ju tagit for i, där i är en siffra i listan. Så det borde väl funka?
Ska du inte göra insert_in_sorted(i, out)?
Laguna skrev:Ska du inte göra insert_in_sorted(i, out)?
jo, testade men då blir det inget felmeddelande och den printar bara ut "[]"
Vad gör insert_in_sorted om du ger den 2 och []?
Laguna skrev:Vad gör insert_in_sorted om du ger den 2 och []?
ger None, tror det är problemet
fattar bara inte varför
Laguna skrev:Vad gör insert_in_sorted om du ger den 2 och []?
hur kom du på det?
Tittade på koden. Den går igenom alla element i sorted_list, men när den listan är tom händer alltså ingenting alls.
Dualitetsförhållandet skrev:Förstår inte varför den inte funkar?
Den borde ju kalla på funktionen ovanför och lägga in element i out i ordning. Ser att det står 'list' object cannot be interpreted as an integer, men jag har ju tagit for i, där i är en siffra i listan. Så det borde väl funka?
Felet beror på att range() behöver heltalsargument, men du anger en lista:
for i in range(my_list):
Ändra till:
for i in range(len(my_list)):
För mig sticker det i ögonen när variabeln out
är global. Den borde vara ett argument till funktionen (eller en lokal variabel i funktionen).
Kodgranskning är bra, Laguna hittade ett fel på det sättet. Du bör dessutom skriva kod som testar dina funktioner för då hittar du felen snabbare.