Dobrodošli na treće predavanje na ubrzanom kursu.
Na ovom predavanju ćemo naučiti da se nosimo sa stringovima u Pythonu. Pripremite kokice i čvrsto sjedite.
Strings
Prvo, hajde da razgovaramo o citatima i otklonimo zabunu koju bi oni mogli da unesu u Python.
Kao što je već rečeno, možemo koristiti i jednostruke i dvostruke navodnike nakon funkcije u Pythonu. Ovo je posebno korisno. Pretpostavimo da želite da odštampate nešto ovako.
print('This is Shahbaz's computer')
Sada u gornjem izrazu, sve nakon drugog navodnika kao u “Shahbazovom” će ostati neidentifikovano od strane python interpretera jer će Python uzeti drugi navodnik kao kraj niza. U tom slučaju, želite koristiti dvostruke navodnike da deklarirate niz ovako:
print("This is Shahbaz's computer")
Ovo se može primijeniti i obrnuto i možemo koristiti jednostruke navodnike ako unutar niza postoje dvostruki navodnici. npr
print('This "computer" belongs to Shahbaz')
Sada ako želite da ispišete string koji se proteže na više redova, morali biste da koristite trostruke navodnike da zatvorite niz. Ovi navodnici također mogu biti jednostruki ili dvostruki ovisno o sadržaju niza. Na primjer:
Sada recimo da želite da ispišete određeni znak iz niza. Kako biste to uradili?
Python interpreter indeksira znakove u nizu ovako:
Kao što možete vidjeti u terminalu, samo je 'h' ispisano. To je zato što smo odabrali samo treći znak u našem nizu za ispis na terminalu tako što smo u uglastim zagradama upisali 3 nakon varijable. Python interpreter također indeksira znakove u negativu kako bi pojednostavio velike nizove. To znači da će '-1' biti posljednji broj u nizu i tako dalje. Imajte na umu da razmaci nisu indeksirani što znači da će gornji niz imati samo 21 indeksirani razmak.
Također možete odabrati niz znakova iz niza. npr
HashDork = ('Python Course by Shahbaz')
print(HashDork[0:3])
Ovaj program će ispisati 'Pyt' na terminalu. Indeks 3 je isključen iz ovoga.
HashDork = ('Python Course by Shahbaz')
print(HashDork[2:])
Na isti način, ako ne dostavimo završni indeks, python će ispisati cijeli niz nakon prvog indeksa. Rezultat ovog programa će biti 'thon Course by Shahbaz'. Ovo važi i obrnuto. tj. ako propustimo prvi indeks onda će se ispisati cijeli niz od početka do posljednjeg definiranog indeksa.
Program sa samo dvotočkom u indeksnim zagradama će dati kompletan niz na terminalu.
Vježbajte
Evo jedne zanimljive vježbe
napišite program koji definira indeksni interval [1:-1]. Šta mislite šta će biti rezultat. Probajte sami.
Formatirani nizovi
Formatirani nizovi su posebno korisni u situacijama kada dinamički generišete neki tekst sa svojim varijablama. Dozvolite mi da vam pokažem.
Recimo da imamo dvije varijable, ime i prezime.
first_name = 'Shahbaz'
last_name = 'Bhatti'
Sada želimo ispisati 'Shahbaz [Bhatti] je koder' na terminalu. Kako bismo to uradili? Uvest ćemo treću varijablu ovako:
message = 'first_name + ' [' + last_name + '] is a coder'
Sada, ako odštampamo i pokrenemo ovaj program, dobićemo 'Shahbaz [Bhatti] je koder' na terminalu.
Iako ovaj pristup savršeno funkcionira, nije idealan jer kako naš tekst postaje kompliciraniji postaje sve teže vizualizirati izlaz. Ovdje koristimo formatirane stringove, oni nam olakšavaju vizualizaciju izlaza.
Izmijenimo treću varijablu 'message' i uvedemo formatirani string. Da biste definirali formatirane stringove, stavite prefiks svojim stringovima sa 'f', a zatim koristite vitičaste zagrade za dinamičko umetanje vrijednosti u svoje stringove. Naš program će izgledati otprilike ovako:
first_name = 'Shahbaz'
last_name = 'Bhatti'
message = f'{first_name} [{last_name}] is a coder'
Da biste definirali formatirane stringove, stavite prefiks svojim stringovima sa F, a zatim koristite vitičaste zagrade za dinamičko umetanje vrijednosti u svoje stringove.
Sjajne stvari koje možete učiniti sa Python stringovima
Pokazat ću vam neke stvarno cool stvari koje možete učiniti sa Python stringovima.
1. Broj znakova u nizu
Dakle, počnimo s definiranjem varijable:
message = 'Shahbaz Bhatti is a Coder '
Sada, ako želim da odredim broj znakova u gornjem nizu, postoji ugrađena funkcija “len” u Python-u. Samo ispišite varijablu s ovom funkcijom ovako
print(len(message))
Ovo je posebno korisno kada primate podatke od korisnika. Na primjer, primijetili ste da kada popunjavate obrazac na mreži, svako polje za unos često ima ograničenje. Na primjer, možete imati 50 znakova za svoje ime, tako da pomoću ove funkcije "len" možemo nametnuti ograničenje broja znakova u polju za unos.
2. Pretvaranje znakova u nizu u velika ili mala slova
Funkcijama vezanim za nizove možemo pristupiti preko operatora tačke. Možete upisati ime svoje varijable i ako stavite tačku ispred nje, možete vidjeti listu svih takvih funkcija.
Sada preciznije rečeno, ove funkcije nazivate metodama, ovo je termin u objektno orijentiranom programiranju koji želimo da pogledamo u budućnosti, ali za sada, ono što želim da oduzmete je da kada funkcija pripada nečemu drugom ili je specifična za neku vrstu objekta, tu funkciju nazivamo metodom. U ovom slučaju koristićemo metodu “upper” za pretvaranje stringa u velika slova.
Kako je ova funkcija specifična za string, to nazivamo metodom. Nasuprot tome, “len” i “print” su funkcije opće namjene, one ne pripadaju nizovima ili brojevima ili drugim vrstama objekata. Ovo je osnovna razlika između funkcije i metode.
Sada, odštampajmo ovo.
message = 'Shahbaz Bhatti is a coder'
print(message.upper())
I možemo vidjeti da imamo string u velikim slovima. Slično, imamo metodu “lower” za pretvaranje stringa u mala slova. Također možete koristiti metodu “title” za pisanje svake riječi niza velikim slovima.
Imajte na umu da metoda ne mijenja ili modificira naš originalni string. U stvari, kreira novi string i vraća ga.
3. Pronađite niz znakova u nizu
Pokušajmo s drugom metodom da pronađemo indeks određenog karaktera u nizu.
Tip:
message.find('b')
nakon iste varijable i ispisati je. On će ispisati indeks prvog pojavljivanja slova 'b' u nizu koji je u ovom slučaju 4.
Imajte na umu da je ova metoda osjetljiva na velika i mala slova i da će vratiti -1 ako znak nije pronađen u nizu. Može se koristiti i za niz znakova.
Na primjer, sljedeći program:
message = 'Shahbaz Bhatti is a coder'
print(message.find('coder'))
će vratiti vrijednost “20” jer sekvenca “koder” počinje od indeksa 20.
4. Zamjena znaka u nizu
Možete koristiti metodu “replace” za zamjenu znaka ili niza znakova u nizu. Pogledajmo ovo na djelu.
message = 'Shahbaz Bhatti is a coder'
print(message.replace('coder', 'programmer'))
Ovaj program će zamijeniti riječ “koder” sa “programer” i ispisati je na terminalu.
5. Provjerite postojanje znaka u nizu
Sada postoje slučajevi kada želite da proverite postojanje karaktera ili niza karaktera u vašem nizu. U tim situacijama možete koristiti format vašeg izraza na sljedeći način:
message = 'Shahbaz Bhatti is a coder'
print('python' u poruci)
Sada će ovo vratiti logičku funkciju. tj. “Tačno” ili “Netačno”. Volim ovo;
Imajte na umu da su sve ove metode i funkcije osjetljive na velika i mala slova.
Zamotati!
Postoji mnogo više o žicama, što ćemo postepeno učiti kako idemo naprijed. Zatim ćemo naučiti da izvodimo aritmetičke operacije u Pythonu.
Ostavite odgovor