Rozdělit a analyzovat řetězec v Pythonu

v Krajta, práce s řetězci je základním aspektem programování. Struny jsou sekvence znaků a často obsahují strukturovaná data, která je třeba zpracovat nebo analyzovat. Běžné operace prováděné s řetězci jsou rozdělení a analýza.

Rozdělení řetězce v Pythonu

V Pythonu můžete rozdělit řetězec na menší části pomocí split()> metoda a The split()> metoda bere oddělovač jako argument a přeruší řetězec při každém výskytu oddělovače a vrátí seznam podřetězců.

Syntaxe:

string.split(oddělovač)

Parametry:

  • delimiter> : Znak nebo podřetězec, ve kterém bude řetězec rozdělen. Je to volitelný parametr.

Návratová hodnota:

The split()> metoda vrátí seznam podřetězců získaných přerušením původního řetězce při výskytech oddělovače.

Metoda str.split().

Tato metoda rozdělí řetězec na seznam podřetězců na základě zadaného oddělovače. Řetězec Dobrý den, vítejte na techcodeview.com pomocí čárky (‘,’) jako oddělovače. The funkce split(). odděluje řetězec na seznam podřetězců pomocí oddělovače, což vede k seznamu A obsahujícímu [Ahoj, vítejte na techcodeview.com].

Příklad:

Krajta




# Define a string containing> string> => 'Hello,Welcome,to,techcodeview.com'> # Use the split() method to split the string into> A> => string.split(> ','> )> # Print the resulting list> print> (A)>

Výstup :

['Hello', 'Welcome', 'to', 'techcodeview.com'] 

Metoda str.rsplit().

Toto je podobné str.split() , ale rozděluje se z pravé strany provázku. Daný kód používá funkci rsplit() k rozdělení řetězce S na dvě části na základě posledního výskytu čárky (‘,’). Výsledkem je seznam obsahující části před a po rozdělení. A bude [‚Hello to World‘, ‚Python‘] kde je poslední část oddělená čárkou Krajta je oddělený od zbytku řetězce Ahoj světe .

Příklad:

Krajta




# Given string> S> => 'Hello,to,World,Python'> A> => S.rsplit(> ','> ,> 1> )> # Printing the result> print> (A)>

Výstup :

['Hello,to,World', 'Python'] 

Metoda str.splitlines().

Tato metoda rozdělí řetězec na zalomení řádků a vrátí seznam řádků. Kód definuje řetězec M se třemi řádky textu oddělenými znaky nového řádku. Poté používá metoda splitlines(). pro rozdělení řetězce do seznamu s názvem line a kde každý prvek představuje řádek z původního řetězce. Nakonec kód vytiskne obsah seznamu řádků.

Příklad:

Krajta




# Define a string with three lines of> # text separated by newline characters> M> => 'GFG 1 GFG 2 GFG 3'> # Use the splitlines() method to split> line> => M.splitlines()> print> (line)>

Výstup :

['GFG 1', 'GFG 2', 'GFG 3'] 

Metoda str.partition().

Tato metoda rozdělí řetězec na tři části na základě prvního výskytu oddělovače. Kód používá rozdělit() metoda k rozdělení řetězce Text při prvním výskytu oddělovače. Přiřadí část před oddělovačem proměnné před, samotný oddělovač proměnné sep a část za oddělovačem proměnné po.

Příklad:

Krajta




# Input string> Text> => 'Mango,Orange,apple'> before, sep, after> => Text.partition(> ','> )> # Printing the part of the string before the separator> print> (before)> print> (after)>

Výstup :

Mango Orange,apple 

Metoda re.split().

Modul re poskytuje výkonnější dělení řetězců pomocí regulárních výrazů. Kód používá re.split() funkce z modulu re v Pythonu k rozdělení textového řetězce na základě přítomnosti číslic. Vytvoří seznam P, kde prvky jsou podřetězce textu oddělené číslicemi. Výstup by byl [‚Mango, Orange‘, ‚Banana‘], což ukazuje, že řetězec byl rozdělen na číslici ‚1‘.

Příklad:

Krajta




import> re> # Input text containing a mix of> # alphabetic characters and digits> Text> => 'Mango,Orange1Banana'> P> => re.split(r> 'd'> , Text)> # Printing the resulting list of substrings> print> (P)>

Výstup :

['Mango,Orange', 'Banana'] 

Používání funkce List Comprehension

Můžeš použít porozumění seznamu k rozdělení řetězce a odfiltrování prázdných řetězců. Kód rozdělí řetězec Text čárkami pomocí split(‘,’) a poté použije porozumění seznamu k vytvoření seznamu P obsahujícího neprázdné části po odstranění veškerých mezer na začátku nebo na konci. Výstupem je seznam P obsahující [‚Mango‘, ‚Pomeranč‘, ‚Banán‘]. Tento kód efektivně odstraňuje prázdné části z výsledku rozdělení a ořezává všechny přebytečné mezery.

Příklad:

Krajta




# Given input string> Text> => 'Mango,Orange,Banana'> # Split the input string by commas and filter out empty parts using list comprehension> P> => [part> for> part> in> Text.split(> ','> )> if> part.strip()]> # print> print> (P)>

Výstup :

['Mango', 'Orange', 'Banana'] 

v Krajta , Analýza řetězce odkazuje na extrahování smysluplných informací z daného řetězce a Tento proces zahrnuje konverzi řetězce na požadovaný datový typ nebo extrahování konkrétních datových vzorů z řetězce.

Převod na Integer nebo Float

Pokud řetězec obsahuje číselná data. můžete jej analyzovat na datový typ integer nebo float pomocí int()> a float()> funkcí, resp. Daný kód převede řetězec 52 na celé číslo a vytiskne výsledek (52). Podobně převede řetězec 4.17 na číslo s plovoucí desetinnou čárkou a vytiskne výsledek (4.17). To ukazuje použití funkcí int() a float() k převodu řetězců na odpovídající číselné datové typy v Pythonu.

Krajta




# Convert a string to an integer> number_str> => '52'> number_int> => int> (number_str)> print> (number_int)> # Convert a string to a floating-point number> decimal_str> => '4.17'> decimal_float> => float> (decimal_str)> print> (decimal_float)>

Výstup :

52 4.17 

Závěr

Pomocí těchto metod uvedených výše budete moci rozdělit a analyzovat řetězec. Prozkoumáme také, jak můžeme převést interger na float a pomocí metody split(). jak můžeme rozbít provázek na menší části na základě oddělovače.