Formatarea sirurilor de caractere si operatii cu siruri de caractere

Python | Stefanescu Mihai | 2020-10-11

Sirurile de caractere este unul dintre cele mai populare tipuri de date din python. Putem crea un sir de caractere (string) pur si simplu punandu-l intre ghilimele sau apostroafe (in python “ si ‘ sunt tratate la fel).

variabila1 = 'Salut www.invata-programare.ro!'
varariabila2 = "Salut Invata-Programare!"

Accesarea valorilor din siruri de caractere

Pentru a accesa substring-uri (portiuni din siruri de caractere) va trebui sa sa folosim parantezele patrate pentru sliceing:

variabila1 = 'Salut www.invata-programare.ro!'
varariabila2 = "Salut Invata-Programare!"
print "variabila1[0]: ", variabila1[0]
print "variabila2[1:5]: ", variabila2[1:5]

Codul de mai sus va avea urmatorul rezultat:

variabila1[0]: S
variabila2[1:5]: alut

Update-ul unui string

Poti face “update” unui sir de caractere re-asignandu-i alta valoare. Aceasta noua valoare poate fi scris in continuarea celei vechi sau o poate inlocui pe cea veche.

variabila1 = 'Salut'
print "Noul sir de caractere: ", variabila1 + ' www.invata-programare.ro'

Acest cod va avea rezultatul:

Noul sir de caractere: Salut www.invata-programare.ro

Operatori de formatare a stringurilor

Python ne permite sa formatam sirurile de caractere folosindu-ne de operatorul %. Acest operator se aplica numai in cazul sirurilor de caractere si este similar cu functia printf din C (si din limbajele ce fac parte din aceasta familie).

print "Salut! Numele meu este %s si am %d ani!" % ('Stefanescu Mihai', 23) 

Iata o lista cu toate symbolurile ce pot fi folosite ina cest mod:

Simbol

Reprezinta

%c

Un caracter

%s

Un sir de caractere

%i

Numar intreg

%d

Numar zecimal

%u

Numar intreg mai mare de 0

%o

Numar intreg octal

%x

Numar intreg hexazecimal

%X

Numar intreg hexazecimal

%e

Notare exponentiala

%E

Notare exponentiala

%f

Float

%g

Similar cu %f si %e

%G

Similar cu %f si %E

Ghilimele triple

Ghilimelele triple in Python ne ajuta la scrierea unui sire de caractere ce se intinde pe mai multe randuri.

 

string_mare = """this is a long string that is made up of
several lines and non-printable characters such as
TAB ( \t ) and they will show up that way when displayed.
NEWLINEs within the string, whether explicitly given like
this within the brackets [ \n ], or just a NEWLINE within
the variable assignment will also show up.
"""
print string_mare

Siruri de carcatere unicode

In mod normal sirurile de carctere din Python sunt stocate ca si ASCII 8bits, in timp ce sirurile de caractere unicode sunt stocate in 16-bit Unicode. Acest unicode ne permite sa stocam o gama mai larga de caractere, inclusiv caractere speciale (diacritice).

print u'Salut, comunitatea www.invata-programare.ro!'

 



Imi place ce faci aici
Daca iti place ce fac aici imi poti cumpara o cafea Buy Me a Coffee at ko-fi.com

Stefanescu Mihai
Programator de ~8 ani, am lucrat la proiecte din mai multe industrstrii, de la eCommerce la telecomunicatii la automatizari. In acest timp am folosi diferite tehnologii, de la PHP, MySQL, PostgreSql, RabbitMq, Redis, Memcached si altele.
       

Get in touch
Pentru nelamuriri, dubii, comentarii si chestii de pe suflet ne putem auzi pe Discord, Reddit sau poti deschide o discutie noua pe forum.

Posteaza un comentariu

Comentarii

Inca nu au fost postate comentarii, fii primul care posteaza un comentariu!

Club-ul este dedicat membrilor si ofera access la mai multe zone ale website-ului.

🗝ïļ Login 🌟 Register

🔖 Bookmarks ⊞
âœĻ Pentru a sustine aceasta comunitate am sa te rog sa te autentifici sau sa te inregistrezi!

🌊ïļ Discord ⊞

Folosim cookie-uri pentru a oferi functionalitatile critice ale aplicatiei Invata-Programare. Folosim cookie-uri si pentru a analiza traficul, pentru care e nevoie de consimtamantul dvs. explicit.

⮆ïļ