Obsah[Skryť][Šou]
Vitajte pri tretej prednáške v rýchlokurze.
V tejto prednáške sa naučíme pracovať s reťazcami v Pythone. Pripravte si pukance a pevne sa usaďte.
Reťazce
Najprv sa porozprávajme o úvodzovkách a odstránime zmätok, ktorý by mohli spôsobiť v Pythone.
Ako už bolo uvedené, po funkcii v Pythone môžeme použiť jednoduché aj dvojité úvodzovky. Toto má špecifickú užitočnosť. Predpokladajme, že chcete niečo také vytlačiť.
print('This is Shahbaz's computer')
Teraz vo vyššie uvedenom výraze všetko za druhou úvodzovkou ako v „Shahbaz's“ prekladač pythonu neidentifikuje, pretože Python vezme druhú úvodzovku ako koniec reťazca. V takom prípade chcete použiť dvojité úvodzovky na deklarovanie reťazca takto:
print("This is Shahbaz's computer")
Dá sa to použiť aj naopak a ak sú v reťazci dvojité úvodzovky, môžeme použiť jednoduché úvodzovky. napr
print('This "computer" belongs to Shahbaz')
Teraz, ak chcete vytlačiť reťazec, ktorý zahŕňa viacero riadkov, na uzavretie reťazca by ste museli použiť trojité úvodzovky. Tieto úvodzovky môžu byť tiež jednoduché alebo dvojité v závislosti od obsahu reťazca. Napríklad:
Teraz povedzme, že chcete vytlačiť konkrétny znak z reťazca. Ako by ste to urobili?
Interpret Pythonu indexuje znaky v reťazci takto:
Ako môžete vidieť na termináli, vytlačilo sa iba „h“. Je to preto, že sme vybrali iba tretí znak v našom reťazci na tlač na termináli napísaním 3 v hranatých zátvorkách napíšte za premennú. Interpret Pythonu tiež indexuje znaky záporne, aby sa zjednodušili veľké reťazce. To znamená, že '-1' bude posledné číslo v reťazci atď. Všimnite si, že medzery nie sú indexované, čo znamená, že vyššie uvedený reťazec bude mať iba 21 indexovaných medzier.
Môžete tiež vybrať sériu znakov z reťazca. napr
HashDork = ('Python Course by Shahbaz')
print(HashDork[0:3])
Tento program vytlačí 'Pyt' na termináli. Index 3 je z toho vylúčený.
HashDork = ('Python Course by Shahbaz')
print(HashDork[2:])
Rovnakým spôsobom, ak nedodáme koncový index, python vypíše celý reťazec za prvým indexom. Výstupom tohto programu bude „thon Course by Shahbaz“. Toto platí naopak. tj ak vynecháme prvý index, vytlačí sa celý reťazec od začiatku po posledný definovaný index.
Program, ktorý má v zátvorkách indexovania iba dvojbodku, poskytne celý reťazec na termináli.
Cvičenie
Tu je zaujímavé cvičenie
napíšte program, ktorý definuje interval indexu [1:-1]. Aký bude podľa vás výstup. Skúste to sami.
Formátované reťazce
Formátované reťazce sú užitočné najmä v situáciách, keď dynamicky generujete nejaký text pomocou svojich premenných. Ukážem ti.
Povedzme, že máme dve premenné, meno a priezvisko.
first_name = 'Shahbaz'
last_name = 'Bhatti'
Teraz chceme na terminál vytlačiť „Shahbaz [Bhatti] is a coder“. Ako by sme to urobili? Zavedieme tretiu premennú, ako je táto:
message = 'first_name + ' [' + last_name + '] is a coder'
Ak teraz vytlačíme a spustíme tento program, dostaneme na termináli „Shahbaz [Bhatti] is a coder“.
Aj keď tento prístup perfektne funguje, nie je ideálny, pretože ako sa náš text komplikuje, je ťažšie vizualizovať výstup. Tu používame formátované reťazce, uľahčujú nám vizualizáciu výstupu.
Zmeňme tretiu premennú „správa“ a zaveďme formátovaný reťazec. Ak chcete definovať formátované reťazce, zadajte pred reťazce písmeno „f“ a potom použite zložené zátvorky na dynamické vkladanie hodnôt do reťazcov. Náš program bude vyzerať asi takto:
first_name = 'Shahbaz'
last_name = 'Bhatti'
message = f'{first_name} [{last_name}] is a coder'
Ak chcete definovať formátované reťazce, zadajte pred reťazce písmeno F a potom použite zložené zátvorky na dynamické vkladanie hodnôt do reťazcov.
Skvelé veci, ktoré môžete robiť s Python Strings
Ukážem vám niekoľko skutočne skvelých vecí, ktoré môžete robiť s reťazcami Pythonu.
1. Počet znakov v reťazci
Začnime teda definovaním premennej:
message = 'Shahbaz Bhatti is a Coder '
Ak teraz chcem určiť počet znakov vo vyššie uvedenom reťazci, v Pythone je zabudovaná funkcia „len“. Stačí vytlačiť premennú s touto funkciou takto
print(len(message))
Toto je obzvlášť užitočné, keď dostávate vstup od používateľa. Napríklad ste si všimli, že keď vypĺňate formulár online, každé vstupné pole má často limit. Môžete mať napríklad 50 znakov pre svoje meno, takže pomocou tejto funkcie „len“ môžeme presadiť obmedzenie počtu znakov vo vstupnom poli.
2. Konverzia znakov v reťazci na veľké alebo malé písmená
K funkciám súvisiacim s reťazcom môžeme pristupovať cez bodkový operátor. Môžete zadať názov svojej premennej a vložením bodky pred ňu zobrazíte zoznam všetkých takýchto funkcií.
Presnejšie povedané, tieto funkcie označujete ako metódy, toto je termín v objektovo orientovanom programovaní, na ktorý sa chceme pozrieť v budúcnosti, ale teraz chcem, aby ste si odniesli, že keď funkcia patrí niečomu inému alebo je špecifické pre nejaký druh objektu, označujeme túto funkciu ako metódu. V tomto prípade použijeme metódu „upper“ na prevod reťazca na veľké písmená.
Keďže táto funkcia je špecifická pre reťazec, hovoríme o nej ako o metóde. Naproti tomu „len“ a „print“ sú univerzálne funkcie, nepatria k reťazcom, číslam alebo iným druhom objektov. Toto je základný rozdiel medzi funkciou a metódou.
Teraz si to vytlačíme.
message = 'Shahbaz Bhatti is a coder'
print(message.upper())
A vidíme, že reťazec je napísaný veľkými písmenami. Podobne máme metódu „nižšie“ na konverziu reťazca na malé písmená. Môžete tiež použiť metódu „title“ na veľké písmená každého slova reťazca.
Všimnite si, že metóda nemení ani neupravuje náš pôvodný reťazec. V skutočnosti vytvorí nový reťazec a vráti ho.
3. Nájdite postupnosť znakov v reťazci
Skúsme inú metódu nájsť index konkrétneho znaku v reťazci.
Typ:
message.find('b')
po rovnakej premennej a vytlačte ju. Vypíše index prvého výskytu písmena 'b' v reťazci, ktorý je v tomto prípade 4.
Všimnite si, že táto metóda rozlišuje malé a veľké písmená a vráti -1, ak sa znak v reťazci nenájde. Dá sa použiť aj pre postupnosť znakov.
Napríklad nasledujúci program:
message = 'Shahbaz Bhatti is a coder'
print(message.find('coder'))
vráti hodnotu „20“, pretože sekvencia „kódovač“ začína od indexu 20.
4. Nahradenie znaku v reťazci
Na nahradenie znaku alebo postupnosti znakov v reťazci môžete použiť metódu „nahradiť“. Pozrime sa na to v praxi.
message = 'Shahbaz Bhatti is a coder'
print(message.replace('coder', 'programmer'))
Tento program nahradí slovo „kóder“ slovom „programátor“ a vytlačí ho na termináli.
5. Skontrolujte existenciu znaku v reťazci
Teraz existujú prípady, keď chcete skontrolovať existenciu znaku alebo postupnosti znaku vo vašom reťazci. V týchto situáciách môžete použiť formát výrazu takto:
message = 'Shahbaz Bhatti is a coder'
vytlačiť ("python" v správe)
Teraz to vráti boolovskú funkciu. tj „Pravda“ alebo „Nepravda“. Páči sa ti to;
Upozorňujeme, že všetky tieto metódy a funkcie rozlišujú veľké a malé písmená.
Zabaliť!
Struny sú oveľa viac, čo sa naučíme postupne, keď budeme napredovať. Ďalej sa naučíme vykonávať aritmetické operácie v Pythone.
Nechaj odpoveď