Dela och slå ihop text: split() och join()
split()delar en sträng till en lista av ord. Standard är att dela på alla typer av whitespace (mellanslag, tabbar, radbrytningar)." ".join(lista)sätter ihop en lista av ord till en sträng med ett mellanslag mellan orden (eller annan avskiljare du väljer).
Tips:
- Efter split(',') kan det finnas extra mellanslag. Använd strip() på varje del.
- För att sätta ihop ord med exakt ett mellanslag, använd ' '.join(...) i stället för att lägga till egna mellanslag i en loop.
Steg-för-steg-exempel: Namn till initialer med split() och join()
Vi gör om ett helt namn till initialer, t.ex. "Anna Lisa" → "A.L.".
Förklaring rad för rad:
- Rad 1–2: Vi ser till att bortse från extra mellanslag i början/slut.
- Rad 3: split() utan argument delar på alla mellanrum — bra för flera ord.
- Rad 4–7: Vi bygger en lista med första bokstaven från varje ord, i versaler.
- Rad 8–9: 'separator'.join(lista) sätter ihop elementen med en separator mellan.
Uppgifter
1) Läs en mening och skriv hur många ord den innehåller.
2) Läs en mening och skriv ut varje ord på egen rad med ordnummer (1., 2., 3., ...).
3) Läs tre ord (på en rad, separerade med mellanslag) och skriv tillbaka dem separerade med - med hjälp av "-".join(...).
4) Mini-projekt: Namn-initialer. Läs ett namn (flera ord), ta första bokstaven i varje ord (versalt) och skriv t.ex. "A.L.".