Programiranje

Delo s strunami v Pythonu

Delo s strunami v Pythonu

Niz je eden izmed najbolj priljubljenih podatkovnih vrst v pythonu. Tip podatkov niza lahko uporabimo za shranjevanje kakršnih koli besedilnih podatkov. V pythonu se kateri koli znak pod enojnimi ali dvojnimi narekovaji šteje za nize. Ti znaki so lahko kateri koli od znakov Unicode, ki jih podpira python. V tej vadnici bomo izvedeli skoraj vse o vrsti podatkov niza v pythonu.

Če želite slediti tej vadnici, je priporočljivo, da je v vašem sistemu nameščena najnovejša različica pythona. Če je v vašem sistemu nameščena starejša različica pythona, lahko sledite našemu vodniku za posodabljanje pythona v Linuxu. 

Ustvarjanje nizov v Pythonu

Če želite ustvariti niz v pythonu, moramo niz znakov podrezati. Python obravnava enojne in dvojne narekovaje kot enake, zato lahko pri ustvarjanju niza uporabimo katerega koli od njih. Oglejte si spodnje primere, ko ustvarimo niz, jih shranimo v spremenljivke in nato natisnemo.

# ustvarjanje niza
pozdrav = "Pozdravljen svet"
# tiskanje niza
tisk (pozdrav)

Ko zaženete zgornjo kodo, boste dobili izhod Pozdravljen, svet.

ustvarjanje nizov v pythonu

V tej kodi smo ustvarili niz Pozdravljen, svetin jo shranil v spremenljivko z imenom pozdrav. Nato s funkcijo tiskanja Python prikažemo niz, shranjen v spremenljivki. Pri zagonu kode boste dobili naslednji izhod. Ustvarimo lahko tudi večvrstični niz z uporabo trojnih narekovajev v spodnji primeri kode.

var = "" "Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incidentidunt
ut labore et dolore magna aliqua."" "
tisk (var)

Tukaj je rezultat.

večvrstični niz v pythonu

V Pythonu so nizi bajtov, ki predstavljajo znake Unicode. Vendar nima vgrajenega podatkovnega tipa za posamezne znake, kot v C ali C++. Vsak niz dolžine enega se šteje za znak.

Dolžina strun 

V mnogih primerih bomo morda morali izračunati dolžino niza. Vgrajena je funkcija, ki lahko izračuna dolžino niza. Funkcija, ki jo bomo uporabljali, je len () funkcijo.

Za ogled praktičnega primera lena () funkcijo, zaženite naslednjo kodo v svojem Python IDE.

var = "To je niz"
print ("Dolžina niza je:", len (var))

Izhod:

dolžina niza po metodi len ()

Za izračun dolžine niza lahko uporabimo tudi zanko python for, o kateri sem razpravljal v tej vadnici. 

Primer:

var = "To je niz"
štetje = 0
za i v var:
count = count + 1
print ("Dolžina niza je:", štetje)

Izhod:

dolžina niza ročno z uporabo zanke for

Združevanje nizov

Združevanje nizov je združevanje ali združevanje dveh nizov. Z operatorjem + lahko enostavno združimo dva niza. Oglejmo si primer združevanja dveh nizov v pythonu.

# ustvarjanje dveh nizov
string1 = "Pozdravljeni"
string2 = "Svet"
# spajanje dveh nizov
pozdrav = niz1 + niz2
tisk (pozdrav)

V zgornji kodi smo ustvarili dva niza, in sicer »Hello« in »World«, in ju shranimo v dve spremenljivki z imenom niz1 in niz2. Nato smo z operaterjem + združili oba niza in jih shranili v spremenljivko z imenom pozdrav in jo prikazali s pomočjo natisni () funkcijo.

Izhod:

združevanje dveh nizov

Ponavljanje niza

Niz lahko v pythonu večkrat ponovimo z operatorjem *. Če želimo na primer dvakrat natisniti niz »Fosslinux«, moramo napisati naslednjo kodo.

tiskanje ("Fosslinux" * 2)

Izhod:

ponavljanje nizov

Oblikovanje nizov

Formatiranje nizov v Pythonu je enostavno. Obstajajo trije načini:

1. Stari slog oblikovanja

Stari slog oblikovanja nizov je narejen z operaterjem%. Uporabiti moramo posebne simbole, kot so "% s", "% d", "% f", "%.f ". z nizom in nato določite vrsto podatkov, ki jih želimo na tem mestu formatirati. Poglejmo, kakšni so podatki, ki jih sprejemajo zgornji simboli.

Na primer, glejte spodnjo kodo. Kodo lahko kopirate in zaženete v svojem najljubšem IDEju python.

string1 = "To je oblikovan niz s celim številom% d"% (1)
string2 = "To je oblikovan niz z nizom% s"% ("Fosslinux")
string3 = "To je formatiran niz s plovnimi podatki% f"% (1.01)
tiskanje (string1)
tiskanje (niz2)
tiskanje (string3)

Izhod:

stari slog oblikovanja nizov v pythonu

Kot lahko vidimo v izhodu, smo nize formatirali s celoštevilčnimi, floatnimi in nizovnimi podatki. Ta način oblikovanja nizov je najstarejši način, vendar se danes uporablja manj.

2. Uporaba metode format ()

To je nova tehnika oblikovanja nizov, uvedena v Python 3. Funkcije format () jemljejo podatke kot argument in jih nadomestijo v nizu, kjer je nadomestni znak so prisotni. 

Primer:

string1 = "To je oblikovan niz s celim številom ".oblika (1)
string2 = "To je oblikovan niz z nizom ".format ("Fosslinux")
string3 = "To je formatirani niz s plavajočimi podatki ".format (1.01)
tiskanje (string1)
tiskanje (niz2)
tiskanje (string3)
print (" je odlično spletno mesto za učenje in ".format ("FossLinux", "Linux", "Python"))

Formatirani niz bomo dobili kot rezultat pri zagonu zgornje kode, kot je prikazano na spodnji sliki.

oblikovanje nizov s funkcijo format ()

3. f-strune

Najnovejša tehnika oblikovanja nizov je interpolacija nizov ali f-nizov, uvedena v različici python 3.6. Ime spremenljivke lahko določimo neposredno v f-nizu in tolmač Python bo zamenjal ime spremenljivke z vrednostjo podatkov, ki ji ustreza. F-nizi se začnejo s črko f, podatke pa lahko vbrizgamo neposredno v ustrezne položaje. Ta tehnika oblikovanja nizov je v zadnjih dneh postala zelo priljubljena. Če si želite ogledati predstavitev njegovega delovanja, kopirajte spodnjo kodo in jo zaženite v svojem python IDE.

string1 = f "To je oblikovan niz s celim številom 1"
string2 = f "To je oblikovan niz z nizom 'fosslinux'"
string3 = f "To je formatirani niz s plavajočimi podatki 0.01 "
tiskanje (string1)
tiskanje (niz2)
tiskanje (string3)
a = "Fosslinux"
b = "Linux"
c = "Python"
print (f "a je odlično spletno mesto za učenje b in c")

Za formatiranje nizov v zgornji kodi smo uporabili metodo interpolacije nizov. Strune, ki se začnejo z znakom f, so f-nizi. F-string je poenostavil naše delo in spremenljivke lahko zapišemo neposredno v nize, tako da spremenljivke damo pod rezervirano mesto. Ob zagonu zgornje kode bomo dobili naslednji izhod.

oblikovanje nizov z uporabo f-nizov

Preverite podniz

Pogosto bomo morda želeli preveriti obstoj znaka ali podniz v nizu. To lahko storite z uporabo v in ni notri Ključne besede Python. Na primer, če želite preveriti, ali zdravo je prisoten v nizu Pozdravljen, svet, zagnati moramo naslednjo kodo.

x = "živjo" v "zdravo svetu"
natisni (x)

Ob zagonu zgornje kode v python IDE bomo dobili logično vrednost Prav kot izhod, kar pomeni, da je podniz »zdravo« prisoten v »zdravo svetu«.

preverite, ali je v nizu podniz

Oglejte si še en prikaz, če želite vedeti, kako to deluje na boljši način.

string = "FossLinux je odlično spletno mesto za učenje Linuxa in Pythona"
print ("Fosslinux" v nizu)
print ("FossLinux" v nizu)
print ("Foss" v nizu)
print ("Pyt" v nizu)
print ("hon" v nizu)
print ("Python" ni v nizu)

Izhod:

s ključno besedo poiščite podniz v nizu

V zgornji kodi smo uporabili oba v in ni notri ključne besede za preverjanje podniza v nadrejenem nizu.

Niz kot zaporedje znakov

Python niz je zaporedje znakov; so skoraj podobna drugim zaporedjem python, kot so seznam, nabor itd. Posamezne znake lahko izvlečemo iz nizov na več načinov, na primer razpakiranje z uporabo spremenljivk in indeksiranje, o katerih bom razpravljal v naslednji temi. Strune lahko razpakiramo tako, da jih dodelimo spremenljivkam. Če želite videti, kako deluje, preprosto kopirajte in zaženite naslednjo kodo v svojem najljubšem python IDE.

language = 'Fosslinux'
# razpakiranje niza v spremenljivke
a, b, c, d, e, f, g, h, i = jezik
natisni (a)
natisni (b)
natisni (c)
natisni (d)
natisni (e)
natisni (f)
tisk (g)
tisk (h)
natisni (i)

Izhod:

razpakiranje znakov z uporabo spremenljivk

Indeksiranje nizov

Indeksiranje nizov je temeljna in priljubljena tehnika, s katero lahko zelo enostavno dostopamo do znakovnega niza in izvedemo številne nizovne operacije. Pri programiranju se štetje začne z ničlo (0), zato moramo dobiti prvi znak niza v indeksu nič. Če si želite ogledati praktični primer indeksiranja, kopirajte in zaženite naslednjo kodo v Python IDE.

string = "Fosslinux"
tiskanje (niz [0])
tiskanje (niz [1])
tiskanje (niz [2])
tiskanje (niz [3])

V zgornji kodi najprej ustvarimo niz z imenom Fosslinux, in nato z indeksiranjem nizov python dobimo prvi, drugi, tretji in četrti znak niza. Pri zagonu kode bomo v terminalu dobili naslednji izhod.

indeksiranje nizov

Python podpira tudi negativno indeksiranje, kar je zelo koristno tam, kjer lahko začnemo šteti z desne strani. Na primer, da dobimo drugi zadnji znak niza »Fosslinux«, moramo napisati spodnjo kodo.

string = "Fosslinux"
print ("Drugi zadnji izraz niza je:", niz [-2])

Ko zaženemo kodo, bomo dobili drugi zadnji izraz niza "Fosslinux", kot je prikazano na spodnji sliki.

negativno indeksiranje v Pythonovih nizih

Pridobivanje zadnjega izraza niza

Včasih bomo morda želeli dobiti zadnji izraz niza. To lahko storimo na dva načina: prvi uporablja negativno indeksiranje, drugi pa funkcijo len () z indeksiranjem.

Če želite dobiti zadnji izraz niza z negativnim indeksiranjem, poglejte spodnjo kodo.

string = "Fosslinux"
print ("Zadnji izraz niza je:", niz [-1])

Izhod:

zadnji izraz z negativnim indeksiranjem

Za pridobitev zadnjega izraza lahko uporabimo tudi funkcijo len () z indeksiranjem. Če želite to narediti, moramo izračunati dolžino niza, nato pa moramo najti znak z indeksiranjem vrednosti, ki je ena manjša od dolžine niza. Glej spodnji primer.

string = "Fosslinux"
dolžina = len (niz)
last_index = dolžina-1
print ("Zadnji izraz niza je:", niz [last_index])

V zgornji kodi smo najprej ustvarili niz in ga shranili v spremenljivko z imenom vrvica. Nato z metodo len () izračunamo dolžino niza. Ker se indeksiranje v pythonu začne z ničlo, moramo eno odšteti od dolžine. Nato ga kot indeks posredujemo datoteki vrvica. Tako dobimo zadnji znak niza. 

Izhod:

zadnji izraz z izračunom dolžine

Rezanje strun

V Pythonu imamo odlično tehniko, razširjeno obliko indeksiranja, znano kot rezanje nizov. To lahko uporabite za rezanje niza v podniz. Če želite narediti rezanje, moramo v indeks niza dati indeksno številko prvega in zadnjega znaka podniza, tako da na sredino postavimo podpičje. Za praktično predstavitev glejte spodnji primer kode.

string = "Fosslinux"
tiskanje (niz [1: 6])
natisni (niz [0: 4])

Izhod:

rezanje nizov

Preskakovanje znakov pri rezanju

Med rezanjem niza lahko tudi preskočimo znake. Med rezanjem niza imamo naslednjo skladnjo.

niz [start: stop: korak]

Začetek in zaustavitev sta privzeti indeksni številki, ki smo ju do zdaj uporabljali v zgornji skladnji. Parameter koraka sprejme celo število, ki se uporablja za določanje števila znakov, ki jih je treba zapustiti v vsakem koraku.

Obračanje nizov

Niz lahko enostavno obrnemo z uporabo metode rezanja. Na primer, glejte spodnjo kodo. Kopirajte spodnjo kodo v svoj Python IDE in jo zaženite.

string = "Fosslinux"
print ("Povratni niz", niz, "je", niz [:: - 1])

Ta koda bo obrnila niz »Fosslinux.”Ob zagonu kode bomo dobili naslednji izhod.

vzvratni niz

Lik za pobeg v nizih

Escape znaki pri programiranju so odličen način za dodajanje ne natisljivih znakov v nize. Na primer, za dodajanje novega znaka vrstice v nize uporabimo ubežni znak "\ n". Glejte spodnjo kodo za predstavitev.

print ("\ n \ n \ n Pozdravljeni \ n \ n Svet")

Ob zagonu kode bomo dobili naslednji izhod.

ubežni znaki v nizih

Kot lahko vidimo v kodi, se nove vrstice samodejno dodajo namesto "\ n". Tu nastopi zaporedje pobega. V pythonu je prisotnih veliko zaporednih znakov. Vse bom naštel tukaj; lahko preizkusite vse, da vidite, kako vsak deluje.

Nizne metode

Naučili smo se veliko stvari o strunah python, vendar je ta del bolj koristen kot kateri koli drugi del tega članka. Python ima veliko vgrajenih funkcij za delo z nizi. Z njihovo uporabo lahko enostavno izvedemo številne operacije na nizih. 

Preoblikovanje nizov

Imamo nekaj vgrajenih funkcij, s katerimi lahko transformiramo primere nizov. Pogovorimo se o vseh.

vrvica.uporaba velikih začetnic ()

Ta metoda se uporablja za izkoriščanje ciljnega niza. Ko metodo uporabimo kot vrvica.izkoristite, niz bo vrnil z velikimi črkami, tj.e., pretvorba prvega znaka v velike in vse ostale znake v male črke. Če si želite ogledati praktično predstavitev delovne kopije in zagnati naslednjo kodo v svojem Python IDE.

string = "fosslinux"
natisni (niz.uporaba velikih začetnic ())
Uporabili smo uporaba velikih začetnic () metoda predmeta String, ki jo uporablja z veliko začetnico. Ob zagonu kode bomo dobili naslednji izhod.
z veliko začetnico v nizu

.zgornji ()

Ta metoda se uporablja za pretvorbo niza v velike črke, tj.e., vse velike znake v nizu uporabi z veliko začetnico. 

Primer:

string = "Fosslinux"
natisni (niz.zgornji ())

Izhod:

pretvorba niza v velike črke

vrvica.nižje ()

Ta metoda se uporablja za pretvorbo niza v male črke, tj.e., spremeni vse znake v nizu v male črke. 

Primer:

string = "FOSSLinux"
natisni (niz.nižje ())

Izhod:

pretvorba niza v velike črke

vrvica.swapcase ()

To je odlična metoda za zamenjavo velikih in malih črk v nizu. Pretvori male črke v velike in obratno niza. Če želite videti, kako deluje, preprosto kopirajte in zaženite naslednjo kodo.  

string = "FOSSlinux"
natisni (niz.swapcase ())

Izhod:

zamenjava primera niza python

vrvica.naslov ()

Še enkrat, to je odlična metoda pri manipulaciji z nizi, saj pretvori prvi znak vsake besede v nizu v velike črke. 

Primer:

string = "Fosslinux je odličen"
natisni (niz.naslov ())

Izhod:

pretvorba niza v naslov

Morda ste opazili razliko med uporaba velikih začetnic () in naslov () metoda. The uporaba velikih začetnic () metoda uporablja samo velik znak prve besede v nizu, medtem ko naslov () metoda uporablja velik znak vsake besede v nizu.

Razvrstitev znakov

Na voljo imamo tudi metode za preverjanje velikih in malih črk nizov itd. O njih se na kratko pogovorimo s primeri.

vrvica.isalnum ()

Ta metoda se uporablja za preverjanje, ali niz vsebuje samo alfanumerične številke ali ne, tj.e., vsi njeni znaki morajo biti številke ali abecede, ne pa tudi drugih znakov, vključno s presledki. 

Primer:

string1 = "Fosslinux123"
string2 = "Fosslinux je odličen"
string3 = "Fosslinux @ # 123"
print (string1.isalnum ()) # vsebuje samo abecedo in številke
print (string2.isalnum ()) # vsebuje presledek
print (string3.isalnum ()) # vsebuje posebne znake

Izhod:

preverjanje alfanumeričnih števil v nizu

vrvica.isalpha ()

Ta metoda nizov je podobna zgornji metodi, vendar preverja samo abecede, ne pa tudi številk i niz, kar pomeni, da mora niz vsebovati samo abecede. Zaženite na primer naslednjo kodo.

string1 = "Fosslinux123"
string2 = "Fosslinux"
print (string1.isalpha ()) # vsebuje abecedo in številke
print (string2.isalpha ()) # vsebuje samo abecedo

Za prvo bomo dobili False, ker vsebuje številke, za naslednjo pa True, saj vsebuje samo abecede. 

Izhod:

preverjanje abeced v nizih

vrvica.isdigit ()

Ta metoda je podobna zgornji, vendar namesto abeced preveri, ali niz vsebuje samo števke. Vrne True, če so vsi znaki v nizu števke; sicer vrne False.

vrvica.isidentifier ()

To je tudi odlična nizovna metoda pythona. Z uporabo te metode lahko preverimo, ali je niz veljaven identifikator pythona ali ne. O osnovah za izbiro veljavnega identifikatorja pythona sem razpravljal v osnovah vadnice za python. 

Primer:

string1 = "Fosslinux123"
string2 = "123Fosslinux"
string3 = "_Fosslinux"
string4 = "Fosslinux @ 1234"
print (string1.isidentifier ()) # True
print (string2.isidentifier ()) # False (začelo se s številkami)
print (string3.isidentifier ()) # True
print (string4.isidentifier ()) # False (vsebuje posebne znake @)

Izhod:

preverjanje identifikatorja v nizu

vrvica.islower ()

Ta metoda nizov preveri, ali so vsi znakovni nizi mali. Če je odgovor da, vrne True, sicer False.

vrvica.isupper ()

Ta metoda nizov preveri, ali so vsi znaki v nizu z velikimi črkami. Če je odgovor da, potem vrne True, sicer False.

vrvica.istitle ()

The istitle () metoda niza bo vrnila True, če je prva abeceda vseh besed v nizu velika, vsi drugi znaki pa male črke.

vrvica.je natisljivo ()

Vrne True, če je mogoče natisniti vse znake v nizu, tj.e., nebežni znaki; v nasprotnem primeru se vrne False. Če želite videti, kako deluje, zaženite naslednjo kodo.

string1 = "Fosslinux"
string2 = "\ nFosslinux"
print (string1.isprintable ()) # True
print (string2.isprintable ()) # False (Vsebuje nov znak vrstice)

Izhod:

preverjanje znakov za tiskanje

vrvica.isspace ()

The vrvica.isspace () metoda bo vrnila True, če so vsi znakovni nizi presledki; v nasprotnem primeru se bo vrnilo False.

Druge pomembne funkcije

vrvica.štetje ()

Metoda count () predmeta String se uporablja za ugotavljanje, kolikokrat se pojavi določena vrednost. 

Primer:

string = "Fosslinux"
natisni (niz.štetje ("s"))

V zgornji kodi smo uporabili štetje () , da dobite, kolikokrat se znak "s" prikaže v nizu "Fosslinux."

Izhod:

štetje določenih znakov v nizu

vrvica.se začne z ()

Ta metoda nizov preveri, ali se niz začne s podnizom, navedenim v argumentu metode. Če si želite ogledati praktično predstavitev njegovega delovanja, kopirajte in zaženite spodnjo kodo v Python IDE.

string = "Fosslinux"
natisni (niz.zažene s ("F"))
natisni (niz.zažene s ("Fo"))
natisni (niz.zažene s ("Foss"))
natisni (niz.zažene s ("Fosss"))

Ko zaženemo zgornjo kodo, bomo za prve tri dobili True, zadnja pa False, kot je prikazano na spodnji izhodni sliki.

niz se začne z

vrvica.konča z ()

To je podobno zgornji metodi, razlika pa je v tem, da bo prejšnji preverjal začetek niza, vendar bo preverjal na koncu niza.

vrvica.najti()

Metoda find () predmeta String je pomembna metoda za iskanje znaka ali podniza v nizu. Podniz sprejme kot argument in vrne indeks podniza, če je prisoten v nizu; sicer vrne -1. 

Primer:

string = "Fosslinux"
natisni (niz.najdi ("lin"))

Ob zagonu zgornje kode bomo dobili izhod kot 4, kar je začetni indeks podniza "lin" v "Fosslinux."

funkcija iskanja nizov

vrvica.zamenjati()

Sintaksa te metode je replace (stara, nova). Potrebna sta dva argumenta; eno je stari podniz, novo pa podniz. V celotnem nizu nadomesti ves stari podniz.

Primer:

string = "Fosslinux"
natisni (niz.zamenjaj ("Foss", ""))
Dobili bomo samo Linux na zaslonu natisnjeno kot Foss se pri zagonu zgornje kode zamenja s presledkom.  Izhod: 
funkcija zamenjave niza

vrvica.razdeli ()

Ta metoda loči kot argument, razdeli niz glede na ločilo in vrne python seznam. 

Primer:

string = "Fosslinux je odličen kraj za začetek učenja linux in python"
natisni (niz.razdeli (""))
Ob zagonu zgornje kode bomo dobili seznam nizov. Kot smo funkcijo split uporabili s presledkom kot argumentom, tako razdeli niz, ko dobi presledek.  Izhod: 
python string split funkcija

vrvica.trak ()

Ta metoda se uporablja za odstranjevanje vseh vodilnih in zaključnih presledkov iz niza.

Zaključek

To je vse o Stringsu in njegovi uporabi v Pythonu. Če prebrskate vadnico, boste dobili idejo, kako koristno je delo z nizi v pythonu. Morda boste želeli videti tudi vadnico o uporabi zanke for v pythonu, končne zanke za iteracijo v pythonu. Nazadnje, preden odidemo, si boste morda želeli ogledati metodo za obračanje niza v Pythonu, ki je priročen med obdelavo nizov.

Top 5 kartic za zajemanje iger
Vsi smo v YouTubu videli in oboževali pretakanje iger. PewDiePie, Jakesepticye in Markiplier so le nekateri izmed najboljših igralcev, ki so zaslužili...
Kako razviti igro na Linuxu
Pred desetletjem le malo uporabnikov Linuxa napoveduje, da bo njihov najljubši operacijski sistem nekoč priljubljena igralna platforma za komercialne ...
Odprtokodna vrata komercialnih igralnih sistemov
Brezplačne, odprtokodne in medplatformacijske igre, ki jih lahko uporabite za igranje starih, pa tudi nekaterih dokaj nedavnih naslovov iger. V tem čl...