str()

Una costante stringa può essere espressa in diversi modi

s = 'Ciao mondo'Sequenza di caratteri limitati con apostrofi
s = "Ciao mondo"Sequenza di caratteri limitati con  virgolette
s1 = 'Ciao ' 'mondo'
s2 = "Ciao " "mondo"
Più sequenze consecutive
s = 'Ciao "mondo"'Le virgolette come carattere
s = "Ciao 'mondo'"L’apostrofo come carattere
s1 = '''Ciao
mondo'''

s2 = """Ciao
mondo"""
Il triplo apostrofo, oppure il triplo virgolettato, permette di scrivere testi che vanno a capo

Vedi le sequenze di escape…

Costruttori

La funzione predefinita str(...) converte qualsiasi cosa in stringa…

Operatori

stringa1 == stringa2Le due stringhe sono uguali?
stringa1 != stringa2Le due stringhe sono diverse?
stringa1 < stringa2La 1° stringa precede la 2°?
stringa1 <= stringa2La 1° stringa precede la 2° oppure sono uguali?
stringa1 > stringa2La 1° stringa segue la 2°?
stringa1 >= stringa2La 1° stringa segue la 2° oppure sono uguali?
stringa1 + stringa2Concatenazione delle due stringhe
n * stringan volte la concatenazione della stringa
stringa[p]Il carattere alla posizione p (vedi SLICING)
c in stringaIl carattere c è compreso nella stringa?
c not in stringaIl carattere c NON è compreso nella stringa?

Funzioni/metodi

  1. s.capitalize() — primo carattere maiuscolo e tutto il resto minuscolo.
  2. s.casefold() — tutto minuscolo (…more aggressive), da 3.3
  3. s.center(n) — centra in una stringa con n caratteri, aggiunge spazi.
  4. s.center(n, ‘c’) — centra in una stringa con n caratteri, aggiunge un certo carattere.
  5. c=chr(n) — il carattere corrispondente al codice
  6. s1.count(s2) — conta quante volte compare s2 in s1
  7. s1.count(s2, start) — conta quante volte compare s2 in s1 a partire da start
  8. s1.count(s2, start, stop) — conta quante volte compare s2 in s1 a partire da start, fino a stop-1.
  9. s1.endswith(s2) — restituisce True se s1 finisce con s2
  10. s1.endswith(s2, start)
  11. s1.endswith(s2, start, stop)
  12. s1.find(s2) — la prima posizione di s2 in s1; -1 se non è presente.
  13. s1.find(s2, start)
  14. s1.find(s2, start, stop)
  15. s1.index(s2) — la prima posizione di s2 in s1; errore se non è presente.
  16. s1.index(s2, start)
  17. s1.index(s2, start, stop)
  18. s=input()
  19. s2=input(s1)
  20. s.isalnum() — restituisce True se i caratteri soddisfano c.isalpha() | c.isdecimal() | c.isdigit() | c.isnumeric()
  21. s.isalpha()
  22. s.isdecimal()
  23. s.isdigit()
  24. s.isidentifier()
  25. s.islower()
  26. s.isnumeric()
  27. s.isprintable()
  28. s.isspace()
  29. s.istitle()
  30. s.isupper()
  31. s.join(it) — restituisce la concatenazione delle stringhe contenute nell’iteratore; utilizza s come concatenatore…
  32. s.lower() — tutto minuscolo
  33. s.lstrip() — restituisce la stringa senza spazi iniziali
  34. s1.lstrip(s2) — rimuove i caratteri specificati con s2
  35. n=len(s) — lunghezza, numero di caratteri
  36. c=max(s) — restituisce il carattere con il codice più alto
  37. c=min(s) — restituisce il carattere con il codice più basso
  38. n=ord(c) — il codice corrispondente al carattere
  39. s.rstrip() — restituisce la stringa senza spazi finali
  40. s1.partition(s2) — restituisce una lista di tre stringhe, la seconda è s2 se esiste.
  41. s1.replace(s2, s3) — sostituisce s2 con s3
  42. s1.replace(s2, s3, n) — sostituisce s2 con s3, le prime n occorrenze
  43. s1.rfind(s2) — come find ma dalla fine…
  44. s1.rindex(s2) — come index ma dalla fine…
  45. l=sorted(s) — restituisce una lista con i caratteri di s in ordine crescente
  46. s.split() — restituisce una lista con i dati (separati da spazi…) contenuti nella stringa
  47. s.split(c) — restituisce una lista con i dati contenuti nella stringa, separati da un certo carattere
  48. s.split(c, n) — restituisce una lista con i dati contenuti nella stringa, separati da un certo carattere, al più n
  49. s.splitlines() — restituisce una lista con i dati (di linee diverse) contenuti nella stringa
  50. s1.startswith(s2) — restituisce True se s1 inizia con s2
  51. s1.startswith(s2, start)
  52. s1.startswith(s2, start, stop)
  53. s.strip() — restituisce la stringa senza spazi iniziali e finali
  54. s1.strip(s2) — rimuove i caratteri specificati con s2
  55. s.swapcase() — restituisce la stringa con le lettere maiuscole che diventano minuscole e viceversa
  56. s.title() — restituisce la stringa con il primo carattere di ogni parola maiuscolo e tutto il resto minuscolo
  57. s.upper() — tutto maiuscolo
  58. s.zfill(n) — completa con zeri a sinistra fino a raggiungere n caratteri, se si tratta di un numero negativo, mantiene il segno.

Leggere una stringa da tastiera

s = input()
s = input("Stringa = ")

Costruttori equivalenti

s = "pyTHon"
s = "p" "yT" "H" "on"
s = str("pyTHon")

Operatori

s = "pyTHon"

s1 = s[1]            # 'y'
s1 = s[1:3]          # 'yT'
s1 = s[1:]           # 'yTHon'
s1 = s[:3]           # 'pyT'
s1 = s+" "+s         # 'pyTHon pyTHon'
s1 = 3*s             # 'pyTHonpyTHonpyTHon'
x  = ('y' in s)      # True
x  = ('y' not in s)  # False

Funzioni / metodi

s = "pyTHon"

x  = len(s)  # 6
s1 = max(s)  # 'y'
s1 = min(s)  # 'H'

x = s.isalpha()  # True 
x = s.islower()  # False 
x = s.istitle()  # False 
x = s.isupper()  # False 

s1 = s.capitalize()      # 'Python'
s1 = s.center(20)        # '       pyTHon       '
s1 = s.center(20,'x')    # 'xxxxxxxpyTHonxxxxxxx'
s1 = s.lower()           # 'python'
s1 = s.replace('y','?')  # 'p?THon'
s1 = s.swapcase()        # 'PYthON'
s1 = s.title()           # 
s1 = s.upper()           # 'PYTHON'
s1 = s.zfill(20)         # '00000000000000pyTHon'

s="18011928"      

p = s.index('8')      # p=1 
p = s.index('9')      # p=5 
p = s.index('7')      # ERRORE! 
p = s.find('8')       # p=1 
p = s.find('7')       # p=-1 
n = s.count('8')      # n=2 
n = s.count('9')      # n=1 
n = s.count('7')      # n=0 
p = s.index('8',1)    # p=1 
p = s.index('8',2)    # p=7 
p = s.find('8',1)     # p=1 
p = s.find('8',2)     # p=7 
p = s.find('8',9)     # p=-1 
n = s.count('8',1)    # n=2 
n = s.count('8',4)    # n=1 
p = s.index('8',2,4)  # ERRORE! 
p = s.index('8',2,8)  # p=7 
p = s.find('8',2,4)   # p=-1 
p = s.find('8',2,8)   # p=7 
n = s.count('8',2,4)  # n=0 
n = s.count('8',2,8)  # n=1

Per manipolare liste e stringhe si possono utilizzare START, STOP, STEP… con lo slicing