Programare în Python

Siruri de caractere în Python ușurința în utilizare, prezența unui număr mare de metode built-in, o varietate de oportunități pentru utilizare flexibilă în munca de zi cu zi. Următoarele aspecte vor fi abordate.

  1. String.
  2. Secțiuni (feliere).
  3. operațiunile de coarde.
  4. Unicode.
  5. Formatarea.
  6. Încorporat metode.
  7. Testul pe concatenarea.

1. String

String - o secvență de caractere cu acces aleator. Șiruri în Python nu pot fi schimbate - în acest caz, noi spunem că este de tip imuabil. Încercarea de a schimba caracterul într-o anumită poziție sau un subșir va cauza o eroare:

Dar dacă vrei cu adevărat, puteți schimba, de exemplu:

Indecși pot avea valori negative pentru referința de la sfârșitul anului - numărătoarea inversă începe cu -1:

Liniile din piton pot fi închise în ghilimele simple sau duble, și citează același tip pot fi imbricate în mod arbitrar citează un alt tip:

Liniile lungi pot fi împărțite în mai multe rânduri folosind un backslash:

seturi mari de linii și text întreg pot fi închise în ghilimele triple:

Liniile backslash folosite în așa-numita evacuare-secvență.

După Slash poate merge unul sau mai multe caractere.

În exemplul următor, o combinație de „\ n“ - este o nouă linie, „\ t“ - această filă:

În exemplul următor, un șir binar constă dintr-o secvență de trei numere - două octal și hexazecimal unul:

Trebuie remarcat faptul că siruri de caractere Python niciodată încheiată la sfârșitul unui octet nul, așa cum se face, de exemplu, în BBC.

Tăietura - mecanismul de linie de control flexibil, pe baza de indexare. Puteți obține orice șir de caractere prin indexul său. La fel ca B, primul simbol are indexul 0. substringul poate fi determinată prin secționarea - doi indici separate prin două puncte:

Dacă primul caracter, atunci este coborâtă la zero în felie; în cazul în care ultimul caracter este omis - este egală cu lungimea liniei:

Puteți selecta o secvență de caractere dintr-un șir de caractere cu un anumit ciclu:

concatenare 7. Testul

Testul concatenarea șir în Python dă rezultate interesante. Abordarea standard, în cazul în care se adaugă un nou segment la sfârșitul șirului existent în piton este ineficient: python la fiecare înlănțuire creează un nou obiect, ceea ce este foarte lent.

Vom efectua un test simplu: o linie va concatena reprezentare simbolică a numerelor naturale ascendente de la 0 pana la un milion.

Prima metodă. Utilizați stocare rând matrice matrice de caractere. Vom adăuga pur și simplu la reprezentarea șir a unui număr natural, și array.tostring) metoda (poate fi utilizat în cele din urmă. Această metodă sa dovedit a fi cel mai lent.

2a metodă. Noi folosim același algoritm ca în prima metodă, dar în loc de matrice folosind o listă, iar în cele din urmă face standardul join.

A treia metodă. Noi folosim modulul cStringIO. care are capacitatea de a scrie într-un pseudo-fișier, care este, de fapt stocat în memorie. La finalul apelului getvalue metoda ().

Metoda patra. Crearea unei liste într-o serie de reprezentări simbolice de numere, și apoi într-o singură lovitură se alătură acestei liste. diferența de la cea de a doua metodă care nu utilizează append (). Veți găsi că această metodă - cel mai rapid.

Rezumând

Siruri de caractere sunt cele mai populare tipuri de bază. Felii, un set mare de built-in functii, format convenabil permite flexibil și să manipuleze în mod eficient în cazul în care ne-am putea petrece mult mai mult timp pe operațiuni de rutină, fie că este vorba o altă limbă. Python - este ușor suma, simplu, minim de efort. În continuarea ciclului va fi despre liste și dicționare. Atunci să vorbim despre module, clase și lucrul cu instrumentele Python sistem de fișiere. cod de probă a fost testat pe versiunile Python 2.6.