2 van 2

Re: working with strings -python

Geplaatst: zo 16 okt 2016, 15:51
door Emveedee
Ja voor dat de Loop zou blijven doorlopen zou ik -23 gelijk stellen aan -1..
Precies!
 
Laten we eerst even de syntax op orde krijgen.
 
Kijk eens hier naar:
 

Code: Selecteer alles

zin = "Dit is een voorbeeld"
n = len(zin)

for i in range(0,n):
    print(i, zin[i])
Begrijp je deze syntax?

Re: working with strings -python

Geplaatst: zo 16 okt 2016, 18:04
door katrien van den boss
Hallo,

Die syntax snap ik dan komt er bij elk cijfer van 0-22 een letter te staan..

Maar dan loop ik een beetje vast.

Re: working with strings -python

Geplaatst: zo 16 okt 2016, 18:20
door Emveedee
Ok, probeer met dit voorbeeld eens om jouw idee toe te passen. Dus beginnen met -3, en dan telkens -3 erbij.

Re: working with strings -python

Geplaatst: zo 16 okt 2016, 19:20
door katrien van den boss
Maar is de code die ik daar dan voor gebruik goed?

De code van

[] = []

Hoe moet ik dan juist de i hierin zetten ??

Re: working with strings -python

Geplaatst: zo 16 okt 2016, 19:49
door Emveedee
Kun je eens je script laten zien tot nu toe?

Re: working with strings -python

Geplaatst: zo 16 okt 2016, 19:55
door katrien van den boss
beste,

Ik ben nu niet meer op de pc ik stuur het morgenmiddag direct door!

Bedankt voor de hulp

Re: working with strings -python

Geplaatst: ma 17 okt 2016, 00:19
door EvilBro
Maar hoe ga je dit met 1 loop doen?
Loops zijn overrated...

Code: Selecteer alles

zin = 'y luaeb h o dtyo aoosgl'
start = -3
step = -3
nieuweZin = ''.join(map(lambda x: zin[x % 23], range(start, start + (step * len(zin)), step)))
print(nieuweZin)
@katrien van den boss: De bovenstaande code kun je het beste nog even negeren. Er zitten wat concepten in waar je, denk ik, nog niet aan toe bent. Het was enkel om voor de lol een oplossing te bieden die geen directe lus bevat.

Re: working with strings -python

Geplaatst: ma 17 okt 2016, 08:09
door katrien van den boss
Maar,

Als ik niet snap wat er staat dan heb ik er niet zoveel aan e,

Kan je uitleggen wat dat allemaal doet aub?

Re: working with strings -python

Geplaatst: ma 17 okt 2016, 11:48
door EvilBro
Ik wil best uitleggen wat mijn stukje code doet. Ik denk echter dat je eerst de al ingeslagen weg moet volgen (dat is makkelijker).

Je moet eerst proberen helder te krijgen hoe je "op papier" in stappen het probleem zou oplossen.
Stel dat je de volgende string gegeven zou krijgen met een start positie 3 en een stapgrootte van 5. De string is "aeidoalsaele td mh !g". Begin door eerst eens een getal naast elke letter te zetten:

Code: Selecteer alles

00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20
 a  e  i  d  o  a  l  s  a  e  l  e     t  d     m  h     !  g
Je moet beginnen bij 3, dus je zoekt 3 op:

Code: Selecteer alles

00 01 02>03<04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20
 a  e  i  d  o  a  l  s  a  e  l  e     t  d     m  h     !  g
Dan kijk je welke letter hierbij hoort en die noteer je:

Code: Selecteer alles

00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20
 a  e  i >d< o  a  l  s  a  e  l  e     t  d     m  h     !  g
output: "d"
Nu is de stapgrootte 5, dus je moet opzoek naar de volgende positie 3 + 5 = 8:

Code: Selecteer alles

00 01 02 03 04 05 06 07>08<09 10 11 12 13 14 15 16 17 18 19 20
 a  e  i  d  o  a  l  s  a  e  l  e     t  d     m  h     !  g

output: "d"
wederom noteren welke letter hierbij hoort:
Nu is de stapgrootte 5, dus je moet opzoek naar de volgende positie 3 + 5 = 8:

Code: Selecteer alles

00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20
 a  e  i  d  o  a  l  s >a< e  l  e     t  d     m  h     !  g

output: "da"
Volgende positie opzoeken (8 + 5 = 13), enz. Probeer dit proces eens verder zelf. Je zult dan zien dat je bij een bijzondere situatie uitkomt als positie hoger wordt dan de lengte van de string. Wat moet je dan doen?

Als je dit op papier kan dan kun je het daarna omzetten naar een programma. Als dat programma er is dan wil ik wel uitleggen wat mijn code doet.

Re: working with strings -python

Geplaatst: wo 26 okt 2016, 21:40
door Emveedee
Katrien, is het je nog gelukt?