# Cadenes de caràcters
- Abans d'usar una cadena de caràcters és necessari crear-la, per a això simplement cal tancar el contingut entre cometes després d'un signe d'igual (=).
```htmlembedded=
mensaje = “Hola Mundo”
```
## Operadors
### Concatenar
- Aquest terme significa ajuntar cadenes de caràcters.
- El procés de concatenació es realitza mitjançant l'operador de suma (+).
- Tingues en compte que has de marcar explícitament on vols els espais en blanc i col·locar-los entre cometes.
- En aquest exemple, la cadena de caràcters “mensaje1” té el contingut “Hola Món”:
```htmlembedded=
mensaje1 = 'Hola' + ' ' + 'Mundo'
print(mensaje1)
```
Resultat:
Hola Mundo
### Multiplicar
- Si vols diverses còpies d'una cadena de caràcters utilitza l'operador de multiplicació ().
- En aquest exemple, la cadena de caràcters missatge1 porta el contingut “Hola” tres vegades, mentre que la cadena de caràcters missatge2 té el contingut “Món”.
- Ordenem imprimir les dues cadenes.
```htmlembedded=
missatge1 = 'Hola ' * 3
missatge2 = 'Món'
print(missatge1 + missatge2)
```
Resultat
-> Hola Hola Hola Món
### Afegir
- Què passa si vols afegir material de manera successiva al final d'una cadena de caràcters? - L'operador especial per a això és compost (+=).
```htmlembedded=
missatge3 = 'Hola'
missatge3 += ' '
missatge3 += 'Món'
print(missatge3)
```
-> Hola Món
## Funcions
### Extensió
- Pots determinar el nombre de caràcters en una cadena utilitzant el mètode len.
- Recorda't que els espais en blanc compten com un caràcter.
```htmlembedded=
missatge4 = 'hola' + ' ' + 'món'
print(*len(missatge4))
```
Resultat
-> 8
### Trobar
- Pots buscar una subcadena en una cadena de caràcters utilitzant el mètode find i el teu programa t'indicarà l'índex d'inici d'aquesta.
- Això és molt útil per a processos que veurem més endavant.
- Tingues al cap que els índexs estan numerats d'esquerra a dreta i que el número en el qual es comença a comptar la posició és el 0, no l'1.
```pythonembedded=
missatge5 = "Hola Món"
missatge5a = missatge5.find("Món")
print(missatge5a)
```
Resultat
-> 5
- Si la subcadena no és present el programa imprimirà el valor -1
```pythonembedded=
missatge6 = "Hola Món"
mensajge6a = missatge6.find("esquirol")
print(missatge 6a)
```
Resultat
-> -1
### Minúscules
- A vegades és útil convertir una cadena de caràcters a minúscules.
- Per a això s'utilitza el mètode lower.
- Per exemple, en uniformar els caràcters permetem que la computadora reconegui fàcilment que “Algunes Vegades” i “algunes vegades” són la mateixa frase.
```pythonembedded=
missatge7 = "HOLA MÓN"
missatge7a = missatge7.lower()
print(missatge7a)
```
Resultat
-> hola món
- Convertir les minúscules en majúscules s'aconsegueix canviant .lower() per upper().
### Reemplaçar
- Si necessites canviar una sub-cadena d'una cadena es pot utilitzar el mètode replace.
```pythonembedded=
missatge8 = "HOLA MÓN"
missatge8a = missatge8.replace("L", "pizza")
print(missatge8a)
```
Resultat:
-> HOpizzaA MÓN
### Tallar
- Si vols tallar parts que no vulguis del principi o del final de la cadena de caràcters, el pots fer creant una sub-cadena.
- El mateix tipus de tècnica et permet separar una cadena molt llarga en components més manejables.
```pythonembedded=
missatge9 = "Hola Mundo"
missatge9a = missatge9[1:8]
print(missatge9a)
```
Resultat
-> ola Mun
### Seqüències de fuita
- Què fas quan necessites incloure cometes en una cadena de caràcters? No vols que l'intèrpret de Python s'equivoqui i pensi que la cadena acaba on es trobi una cometa.
- En Python pots posar una barra invertida (\) enfront de la cometa perquè no acabi aquí la cadena. Això és conegut com a seqüència de fuita.
```pythonembedded=
print('\"')
```
-> "
```pythonembedded=
print('El programa imprimeix \"Hola Món\"')
```
-> El programa imprimeix "Hola Món"
- Altres dues seqüències de fuita et permeten incloure marques de tabulació (t) i salts de línia (n):
```pythonembedded=
print('Hola\tHola\tHola\nMón')
```
-> Hola Hola Hola
Món
Font:
https://programminghistorian.org/es/lecciones/manipular-cadenas-de-caracteres-en-python#manipular-cadenas-de-caracteres-en-python