4 svar
196 visningar
uppsalairaniern 82 – Fd. Medlem
Postad: 13 okt 2018 22:04

Hjälp med att förstå misstag!

Hallå!

Gjorde nyligen ett pythonprov som jag misslyckades med då jag inte fick det att fungera. Felkoden jag fick var att det inte gick att printa ut något som är av typmetoden int och string samtidigt, vilket jag köper. Det jag misslyckades dock med att förstå var exakt VAR i min kod som jag inte gjorde den konverteringen. Jag tänkte att i funktionen conversion så tar jag parametern number, som vi sedan använder i sorting, och konverterar den först till en string. Sedan anropar jag funktionen i den andra funktionen, sorting, för att göra själva lösningen. Min "approach" var att jag gör om det till en sträng från int, för att sedan använda slice och tilldela variabeln last_digit det sista indexet i denna variabel, för att sedan addera det till vår "nya siffra" (new_number). Det var här det gick snett...

Jag gjorde även en testfunktion (test_sorting) och min tolkning av uppgift b (four_times_bigger) så inte ni blir förvirrade av den kodbiten.

 

Tacksam för all form av hjälp jag kan få!

/Shawn

Laguna Online 30482
Postad: 14 okt 2018 07:56

Det blir lättare att felsöka om man får text och inte bara en bild, och också det exakta felmeddelandet.

Bubo 7347
Postad: 14 okt 2018 10:24

Jag är usel på Python, men...

sista if-satsen verkar kräva både att sorting(siffra) är en logisk variabel och att den är en heltal eller flyttal. Det är väl omöjligt?

 

Språkpolisen: Du menar tal, inte siffra. Det är ungefär samma skillnad på siffra och tal som på bokstav och ord. De tio siffor som finns är 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

Laguna Online 30482
Postad: 14 okt 2018 11:42
Bubo skrev:

Jag är usel på Python, men...

sista if-satsen verkar kräva både att sorting(siffra) är en logisk variabel och att den är en heltal eller flyttal. Det är väl omöjligt?

 

Dels det, och dels att 'sorting' inte returnerar nånting alls (då returnerar den None i stället).

Aerius 504 – Fd. Medlem
Postad: 14 okt 2018 11:45

I funktionen

def sorting(number):

    ...

    new_number = last_digit + (len(string_index) - 1)

blir det fel eftersom det inte går att addera en string och int. Läs på vad den inbyggda funktionen len() gör.

Svara
Close