Piton

Kako podijeliti žice u Pythonu

Kako podijeliti žice u Pythonu
Ovaj će članak objasniti kako podijeliti nizove u pythonu metodama “split ()” i “partition ()”. Te su metode posebno korisne ako želite pretvoriti rečenicu ili skupinu riječi u analizirane i iterabilne vrste Python. Svi uzorci koda u ovom vodiču testirani su s Python verzijom 3.8.6.

Split metoda

Metoda "split ()" može se koristiti za razdvajanje riječi pomoću separatora koji je odredio korisnik. Vraća popis podijeljenih riječi bez uključivanja separatora. Ako korisnik ne navede separator, razmak (jedan ili više) koristi se kao jedan separator.

Na primjer, donji kôd vratit će "['Linux', 'Hint']" kao izlaz:

text = "Linux savjet"
tekst.podjela()

Kôd u nastavku vratit će "['LinuxHint', 'com']" kao izlaz kad "."Koristi se kao separator:

text = "LinuxHint.com "
tekst.podjela(".")

Razdjelnik ne mora biti jedan znak. Metoda razdvajanja uzima dva argumenta:

Oba su argumenta neobavezna. Kao što je gore spomenuto, ako argument "sep" nije naveden, razmak se koristi kao separator za razdvajanje. Argument "maxsplit" ima zadanu vrijednost "-1" i on dijeli sve pojave prema zadanim postavkama. Razmotrite donji kod:

text = "LinuxHint.suradnik.nas"
tekst.podjela(".")

Vratit će "['LinuxHint', 'co', 'us']" kao izlaz. Ako želite zaustaviti dijeljenje pri prvom pojavljivanju separatora, navedite "1" kao argument "maxsplit".

text = "LinuxHint.suradnik.nas"
tekst.podjela(".”, 1)

Gornji kod će vratiti "['LinuxHint', 'co.us '] ”kao izlaz. Samo navedite broj pojavljivanja u kojima želite da se postupak razdvajanja zaustavi kao drugi argument.

Imajte na umu da ako postoje uzastopni separatori, prazni niz će biti vraćen za preostale separatore nakon prvog dijeljenja (kada se ne koristi argument "maxsplit"):

text = "LinuxHint ... com"
tekst.podjela(".")

Gornji kod vratit će “['LinuxHint',", 'com'] 'kao izlaz. U slučaju da želite ukloniti prazne nizove s rezultirajućeg popisa, možete upotrijebiti sljedeću izjavu o razumijevanju popisa:

text = "LinuxHint ... com"
rezultat = tekst.podjela(".")
rezultat = [stavka za stavku u rezultatu ako stavka != ""]
ispis (rezultat)

Nakon pokretanja gornjeg uzorka koda dobit ćete "['LinuxHint', 'com']" kao izlaz.

Napominjemo da se metoda “split ()” pomiče slijeva udesno kako bi podijelila nizove u riječi. Ako želite podijeliti niz s desna na lijevo, upotrijebite "rsplit ()". Sintaksa, upotreba i argumenti potpuno su jednaki metodi “split ()”.

Ako u nizu nije pronađen separator dok se koriste metode “split ()” ili “rsplit ()”, izvorni se niz vraća kao jedini element popisa.

Metoda particije

Metoda “partition ()” može se koristiti za razdvajanje nizova i djeluje identično metodi “split ()” s nekim razlikama. Najuočljivija je razlika u tome što zadržava separator i uključuje ga kao stavku u rezultirajućem tupletu koji sadrži podijeljene riječi. To je osobito korisno ako želite podijeliti niz u iterabilni objekt (u ovom slučaju skup) bez uklanjanja izvornih znakova. Razmotrite donji kod:

text = "LinuxHint.com "
rezultat = tekst.particija (".")
ispis (rezultat)

Gornji uzorak koda vratit će "('LinuxHint', '.',' com ') ”kao izlaz. Ako želite da rezultat bude vrste popisa, umjesto njega upotrijebite sljedeći uzorak koda:

text = "LinuxHint.com "
rezultat = popis (tekst.particija ("."))
ispis (rezultat)

Trebali biste dobiti "['LinuxHint', '.',' com '] ”kao izlaz nakon pokretanja gornjeg uzorka koda.

Metoda “partition ()” uzima samo jedan argument nazvan “sep”. Korisnici mogu odrediti separator bilo koje duljine. Za razliku od metode “split ()”, ovaj je argument obvezan, tako da ne možete izostaviti separator. Međutim, razmak možete navesti kao razdvajač.

Napominjemo da se metoda particije zaustavlja pri prvom pojavljivanju separatora. Dakle, ako vaš niz sadrži više separatora, metoda “partition ()” ignorirat će sve ostale pojave. Evo primjera koji to ilustrira:

text = "LinuxHint.suradnik.nas"
rezultat = popis (tekst.particija ("."))
ispis (rezultat)

Uzorak koda će proizvesti "['LinuxHint', '.',' suradnik.us '] ”kao izlaz. Ako se želite razdvojiti u svim pojavljivanjima separatora i separator uključiti i na konačni popis, možda ćete morati upotrijebiti obrazac „Regularni izraz“ ili „RegEx“. Za gore spomenuti primjer možete koristiti RegEx obrazac na sljedeći način:

uvoz re
text = "LinuxHint.suradnik.nas"
rezultat = ponovno.podjela("(\.) ", tekst)
ispis (rezultat)

Dobit ćete "['LinuxHint', '.',' co ','.',' us '] ”kao izlaz nakon izvršavanja gornjeg uzorka koda. Točka je izostavljena u gore spomenutoj RegEx izjavi. Imajte na umu da, iako gornji primjer radi s jednom točkom, možda neće raditi sa složenim separatorima i složenim nizovima. Možda ćete morati definirati vlastiti RegEx obrazac, ovisno o vašem slučaju korištenja. Primjer je upravo spomenut ovdje kako bi vam dao neku ideju o postupku zadržavanja separatora na konačnom popisu pomoću RegEx izraza.

Metoda “partition ()” ponekad može ostaviti prazne nizove, pogotovo kada separator nije pronađen u nizu koji treba podijeliti. U takvim slučajevima možete upotrijebiti izjave za razumijevanje popisa da biste uklonili prazne nizove, kao što je objašnjeno u gornjem odjeljku metode "split ()".

text = "LinuxHint"
rezultat = popis (tekst.particija ("."))
rezultat = [stavka za stavku u rezultatu ako stavka != ""]
ispis (rezultat)

Nakon pokretanja gornjeg koda, trebali biste dobiti "['LinuxHint']" kao izlaz.

Zaključak

Za jednostavne i jednostavne podjele možete koristiti metode “split ()” i “partition ()” da biste dobili iterabilne tipove. Za složene nizove i separatore trebat ćete koristiti izraze RegEx.

Instalirajte najnoviji Dolphin Emulator za Gamecube i Wii na Linux
Dolphin Emulator omogućuje vam igranje odabranih Gamecube i Wii igara na Linux osobnim računalima (PC). Dolphin Emulator je slobodno dostupan i emula...
Kako koristiti GameConqueror Cheat Engine u Linuxu
Članak pokriva vodič o korištenju GameConqueror varalice u Linuxu. Mnogi korisnici koji igraju igre na sustavu Windows često koriste aplikaciju "Cheat...
Najbolji emulatori igraće konzole za Linux
Ovaj će članak navesti popularni softver za emulaciju igraće konzole dostupan za Linux. Emulacija je sloj kompatibilnosti softvera koji oponaša hardve...