34 svar
109 visningar
destiny99 behöver inte mer hjälp
destiny99 7940
Postad: 13 dec 2022 10:50 Redigerad: 13 dec 2022 10:50

Del rowlist chomp

Hej! 

Jag vill att den printar ut endast [["11,"14","13","14"] men tar bort 15 och 16 ,samma sak med de andra listorna i stora listan. Behöver tips tack!

CurtJ 1201
Postad: 13 dec 2022 11:51

Jag tror inte du kan styra print så den förstår vad du vill (men jag kan ha fel där) men vill du skriva ut varje element för sig så gör följande det du vill

    for i in range(len(rowlist)):
        print(rowlist[i][0:-2])
Analys 1229
Postad: 13 dec 2022 11:56

Som CurtJ skriver behöver du alltså inte ta bort några element från lista bara för att du inte vill skriva ut dem, det fixar du med med slicing i print-satsen.

destiny99 7940
Postad: 13 dec 2022 13:17 Redigerad: 13 dec 2022 13:19
CurtJ skrev:

Jag tror inte du kan styra print så den förstår vad du vill (men jag kan ha fel där) men vill du skriva ut varje element för sig så gör följande det du vill

    for i in range(len(rowlist)):
        print(rowlist[i][0:-2])

Hm asså vad säger den raden som du skriver nu? Har vi definierat vad i är ? Den är ej givet väl? Jag förstår len rowlist dvs antalet element i vår lista ja. Och sen rowlist[i][0:-2] som jag ej kopplar vad den gör ?

Analys 1229
Postad: 13 dec 2022 13:58

i definieras iom att du använder den:

den får värdet 0 tom 2 i ditt fall.

rowlist innehåller på första nivå 3 listor.

för var och en skrivs alla tecken utom de två sista ut.

prova!

destiny99 7940
Postad: 13 dec 2022 14:14
Analys skrev:

i definieras iom att du använder den:

den får värdet 0 tom 2 i ditt fall.

rowlist innehåller på första nivå 3 listor.

för var och en skrivs alla tecken utom de två sista ut.

prova!

Jag provade och fick samma som du säger men jag försöker bara tolka vad koden gör nu..

destiny99 7940
Postad: 13 dec 2022 14:16

Är 0 och 2 de två första listorna eller ? 0 och 2 är väl element 0 i element 1 i första listan?

Analys 1229
Postad: 13 dec 2022 14:41

i går igenom var och en av de tre listorna i rowlist, de som startar med 11, 20 och 31.

prinsatsen skriver sen ut varje listas innehåll med start på element 0(första) och slut 2 från slutet.

alternativt kan du skriva:

for row in rowlist:

    print(row[0:-2])

 

precis samma resultat. 

destiny99 7940
Postad: 13 dec 2022 14:46 Redigerad: 13 dec 2022 15:08

Nu loppar den första listan 3 ggr och den tog bort 2 av listorna jag hade från början. Medan om jag ändrar-2 till 2 får ja ett annat resultat som innebär att 2 två av  listorna kommer ut men ej den tredje. Sen vill jag ej att den ska loopar vardera lista 3 ggr och dessutom vill jag att de 2  sista element I varje lista är ej med när de körs ut.

Vad innebär när man skriver [i][0:-2]?

destiny99 7940
Postad: 13 dec 2022 15:12
Analys skrev:

i går igenom var och en av de tre listorna i rowlist, de som startar med 11, 20 och 31.

prinsatsen skriver sen ut varje listas innehåll med start på element 0(första) och slut 2 från slutet.

alternativt kan du skriva:

for row in rowlist:

    print(row[0:-2])

 

precis samma resultat. 

Verkar som att det är skillnaden på denna kod och den andra när båda ska köras ut?

Analys 1229
Postad: 13 dec 2022 15:14
destiny99 skrev:

Nu loppar den första listan 3 ggr och den tog bort 2 av listorna jag hade från början. Medan om jag ändrar-2 till 2 får ja ett annat resultat som innebär att 2 två av  listorna kommer ut men ej den tredje. Sen vill jag ej att den ska loopar vardera lista 3 ggr och dessutom vill jag att de 2  sista element I varje lista är ej med när de körs ut.

Vad innebär när man skriver [i][0:-2]?

Den i:te listan i rowlist och dess element 0,1,2,3 … n-2

destiny99 7940
Postad: 13 dec 2022 15:29 Redigerad: 13 dec 2022 15:29
Analys skrev:
destiny99 skrev:

Nu loppar den första listan 3 ggr och den tog bort 2 av listorna jag hade från början. Medan om jag ändrar-2 till 2 får ja ett annat resultat som innebär att 2 två av  listorna kommer ut men ej den tredje. Sen vill jag ej att den ska loopar vardera lista 3 ggr och dessutom vill jag att de 2  sista element I varje lista är ej med när de körs ut.

Vad innebär när man skriver [i][0:-2]?

Den i:te listan i rowlist och dess element 0,1,2,3 … n-2

Vill du visa med exempel?  Förstår ej riktigt vad n är 

Analys 1229
Postad: 13 dec 2022 15:36

Din första list(0) innehåller 11 tom 16. -2 på slutet menas att 15 och 16 inte kommer med, de två sista elementen:

0:2 betyder 11,12

1:3 betyder 12,13

0:-2 betyder 11,12,13,14

destiny99 7940
Postad: 13 dec 2022 15:39 Redigerad: 13 dec 2022 15:51
Analys skrev:

Din första list(0) innehåller 11 tom 16. -2 på slutet menas att 15 och 16 inte kommer med, de två sista elementen:

0:2 betyder 11,12

1:3 betyder 12,13

0:-2 betyder 11,12,13,14

Åh okej då förstår jag. Men 0:-2. Var börjar den isåfsll?  För mig låter det logiskt att tex 0:2 gör att 11 och 12 kommer, men när det blir 0:-2 innebär väl att vi börjar på-1 som då är 16 ,15 som är på -2 och 14 som är 0

Analys 1229
Postad: 13 dec 2022 15:50

Börjar på 0 och slutar på näst näst sista. När du har minus framför andra termen menas att du räknar från slutet istf början.

destiny99 7940
Postad: 13 dec 2022 15:53 Redigerad: 13 dec 2022 15:56
Analys skrev:

Börjar på 0 och slutar på näst näst sista. När du har minus framför andra termen menas att du räknar från slutet istf början.

Så den börjar räkna från 16 som är på 0 till 14 som är -2? Isåfall borde vi få 16,15 men ej 14?  Vet ej om det är så man ska förstå detta. 

Analys 1229
Postad: 13 dec 2022 16:11

Testa!!

print([11,12,13,14,15,16] [0:2])

Lek med siffrorna i sista hakparentesen som väljerm, slice:ar, från den första.
Enklast att lära sig genomatt testa.

destiny99 7940
Postad: 13 dec 2022 16:22 Redigerad: 13 dec 2022 16:22
Analys skrev:

Testa!!

print([11,12,13,14,15,16] [0:2])

Lek med siffrorna i sista hakparentesen som väljerm, slice:ar, från den första.
Enklast att lära sig genomatt testa.

Alltså jag testade men fattar ej vad som händer.  Det är mitt problem med programmeringen. Jag förstår ej vad varje grej gör 

Analys 1229
Postad: 13 dec 2022 16:25

Ok, hinner ej hjälpa dig nu.

Detta är superviktigt i python.

jag kan göra 10 exempel ikväll och förklara dem.

destiny99 7940
Postad: 13 dec 2022 16:28
Analys skrev:

Ok, hinner ej hjälpa dig nu.

Detta är superviktigt i python.

jag kan göra 10 exempel ikväll och förklara dem.

Hej,okej absolut.  Det vore super schysst. Jag tror jag har glömt detta faktiskt.. ska se om det klarnar med lite youtube.

destiny99 7940
Postad: 13 dec 2022 20:06

Jag glömde att nämna att jag behövde snarare hjälp med att konvertera listan här till strängar så att det printar ut strängar med listan istället i det intervallet då. Blir det en ny fråga då eller?

Analys 1229
Postad: 13 dec 2022 20:23

Vilken lista skall omvandlas till vilka strängar?

destiny99 7940
Postad: 13 dec 2022 20:29
Analys skrev:

Vilken lista skall omvandlas till vilka strängar?

Den där listan.  Såhär har jag försökt hittils

Analys 1229
Postad: 13 dec 2022 20:39

Jag ser vad rowlist och dess värde. 
men vad skall resultatet bli?

btw, du nollställer, tappar, rowlist när du tilldelar en tom lista.

destiny99 7940
Postad: 13 dec 2022 20:42
Analys skrev:

Jag ser vad rowlist och dess värde. 
men vad skall resultatet bli?

btw, du nollställer, tappar, rowlist när du tilldelar en tom lista.

Resultatet ska bli detta . Så jag antar att jag borde ta bort tomma lista?

["12 ","13," ,"14"] osv 

Analys 1229
Postad: 13 dec 2022 20:57

Så strängar men kapa bort 2 på slutet?

destiny99 7940
Postad: 13 dec 2022 20:59
Analys skrev:

Så strängar men kapa bort 2 på slutet?

Aa 

Analys 1229
Postad: 13 dec 2022 21:04

row=[11,12,13,14,15,16]

rowstr=[]

for no in row:

    rowstr.append(str(no))

 

byt ut ”in row” mot exvis “in row[0:-2]” om du inte vill ha med de sista.

har inte kört detta så kan finnas fel

destiny99 7940
Postad: 13 dec 2022 21:08
Analys skrev:

row=[11,12,13,14,15,16]

rowstr=[]

for no in row:

    rowstr.append(str(no))

 

byt ut ”in row” mot exvis “in row[0:-2]” om du inte vill ha med de sista.

har inte kört detta så kan finnas fel

Menar du for I in row[0:-2]?

Analys 1229
Postad: 13 dec 2022 21:11

Behövs inte, no innehåller själva talet direkt

destiny99 7940
Postad: 13 dec 2022 21:14 Redigerad: 13 dec 2022 21:14
Analys skrev:

Behövs inte, no innehåller själva talet direkt

Men varför no? Vad försöker du säga med no . Hänger ej med nu.

destiny99 7940
Postad: 13 dec 2022 21:17 Redigerad: 13 dec 2022 21:20

första bilden är error. Andra bilden printar den ut andra print funktionen

Analys 1229
Postad: 13 dec 2022 21:43

Skall strax köra koden och visa.

Analys 1229
Postad: 13 dec 2022 22:06

Koden funkar fint att köra och genererar strängar i variabeln rowstr.

första exemplet visar att no(kort för nummer) innehåller talen i listan ett och ett.

sedan 4 olika exempel på att klippa ut segment av row listan.

 

destiny99 7940
Postad: 13 dec 2022 22:59 Redigerad: 13 dec 2022 23:00
Analys skrev:

Koden funkar fint att köra och genererar strängar i variabeln rowstr.

första exemplet visar att no(kort för nummer) innehåller talen i listan ett och ett.

sedan 4 olika exempel på att klippa ut segment av row listan.

 

Det var bra exempel.  Jag använder en av dem till min kod då så får jag vad jag är ute efter. Jag lär ändra till rowlist överallt istället för row.Tack!

Svara
Close