V tomto návode objavíte rôzne funkcie Pythonu, ktoré môžete použiť na vytvorenie abecedného zoznamu. Tieto funkcie môžu byť mimoriadne užitočné pri príprave na programátorské súťaže alebo problémy s pohovormi. Pomocou modulu reťazca Python zistíte, ako vytvoriť zoznam všetkých malých a veľkých písmen v abecede ASCII. Sú tu zahrnuté aj základné implementácie, ktoré závisia od vstavaných metód ord() a chr() v Pythone.
Použitie modulu String na vytvorenie zoznamu abecedy v Pythone
Použitie modulu reťazcov Python je najrýchlejší a najprirodzenejší spôsob, ako vytvoriť zoznam každého písmena v abecede. Nie je potrebné nič inštalovať, pretože modul reťazca Python je členom predvolenej knižnice Pythonu. Použitie inštancií písmen string.ascii, string.ascii malých písmen a string.ascii veľkých písmen zjednodušuje získanie zoznamu všetkých písmen abecedy.
Tieto inštancie reťazcového modulu vrátia malé a veľké písmená, ako je uvedené v ich názvoch, a príslušné malé a veľké písmená. Hodnoty sú konštantné a nezávislé od lokality. Preto vždy poskytujú rovnaké výsledky bez ohľadu na to, aké miestne nastavenie zadáte.
Pozrime sa, ako môžeme načítať malé písmená v Pythone pomocou modulu string:
kód
# Python program to print a list of alphabets # Importing the string module import string # Printing a list of lowercase alphabets lower = list(string.ascii_lowercase) print(lower) # Printing a list of uppercase alphabets upper = list(string.ascii_uppercase) print(upper) # Printing a list of both upper and lowercase alphabets alphabets = list(string.ascii_letters) print(alphabets)
Výkon:
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'] ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
Používanie funkcií chr a ord v jazyku Python
V tejto časti zistíte, ako vytvoriť abecedný zoznam pomocou vstavaných funkcií chr a ord. Celočíselná hodnota sa transformuje na zodpovedajúcu hodnotu Unicode pomocou funkcie chr v Pythone. Funkcia ord robí to isté konvertovaním hodnoty Unicode späť na jej celočíselný ekvivalent.
Vytvorte si zoznam abecedy pomocou slučky For
Ak chcete vytvoriť zoznam malých písmen, pomocou metódy chr() môžeme opakovať celé čísla od 97 do 122. Na zobrazenie malých písmen od a do z sa používajú celé čísla v rozsahu od 97 do 122. Každé písmeno pridáme do prázdneho zoznamu, ktorý si vytvoríme. Pozrite sa, ako to vyzerá:
kód
reťazenie reťazcov
# Python program to generate a list of alphabets using the chr and ord functions list_ = [] for i in range(97, 123): list_.append(chr(i)) print(list_)
Výkon:
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
Môže byť náročné spomenúť si, čo predstavuje 97 (alebo 122). To nám umožňuje prechádzať cez ďalších 26 písmen po použití metódy ord(), aby sme získali integrálnu hodnotu abecedy 'g'. Poďme sa na to pozrieť.
dereferenčný ukazovateľ c
kód
# Python program to show how to use the ord function to retrieve the integral value of any alphabet list_ = [] # Getting the integral value of the letter 'j' start_from = ord('g') for i in range(20): list_.append(chr(start_from + i)) print(list_)
Výkon:
['g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
Použite Python List Comprehension na vytvorenie zoznamu abecedy
Už vieme, že výraz sa vyhodnocuje pre každú položku v danom iterovateľnom objekte. Aby sme to dosiahli, môžeme zostaviť pythonský zoznam abecedy iterovaním cez objekt rozsahu Pythonu medzi číslami 97 a 122. Tentoraz to urobíme pomocou porozumenia zoznamu.
kód
# Python program to generate a list of alphabets using the Python list comprehension and the chr() function # Initializing the list comprehension listt = [chr(v) for v in range(97, 123)] # Printing the list print(listt)
Výkon:
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
Aj keď naša slučka for nebola obzvlášť zložitá, vďaka porozumeniu zoznamu v Pythone to bolo oveľa jednoduchšie! Našu extra dynamickú verziu môžeme tiež zmeniť na porozumenie zoznamu Python, ako je uvedené nižšie.
kód
# Python program to generate a list of alphabets using the Python list comprehension and the ord() function # Initializing the list comprehension listt = [chr(v) for v in range(ord('a'), ord('a') + 26)] # Printing the list print(listt)
Výkon:
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
V ďalšej časti zistíte, ako vytvoriť pythonský zoznam abecedy pomocou metódy map().
príkaz arp-a
Použitie funkcie mapy na vytvorenie zoznamu abecedy
Na vygenerovanie abecedného zoznamu v tejto časti použijeme metódu map(). Každá položka v iterovateľnom prvku je odovzdaná funkcii priradenej mapovej funkcii. Výsledkom je, že je možné namapovať funkciu chr Pythonu na každú položku objektu rozsahu, ktorá obsahuje písmená abecedy. Táto metóda zlepšuje čitateľnosť tým, že objasňuje, aká operácia sa vykonáva s každou položkou iterovateľnej položky.
Pozrime sa na vzhľad tohto kódu:
kód
# Python program to generate a list of alphabets using the Python map and the ord() function # Initializing the map function listt = list(map(chr, range(97, 123))) # Printing the list print(listt)
Výkon:
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
Tu dáme funkciu chr, ktorú interpret namapuje na každú položku objektu range() v rozsahu od 97 do 123, metóde map(). Keďže metóda map() poskytuje objekt mapy, na jeho zmenu na zoznam musíte použiť metódu list().
Pythonský reťazec isalpha()
Keď sú všetky znaky daného reťazca abecedy, funkcia isalpha() vráti hodnotu True. Ak nie, vráti sa False.
Syntax funkcie isalpha() v Pythone je:
string.isalpha()
Parametre isalpha():
Funkcia isalpha() neberie žiadne parametre.
Návratová hodnota z isalpha()
zoznam polí java
isalpha() vytvára výsledok:
- True, ak daný reťazec obsahuje iba abecedné znaky (reťazec môže obsahovať malé a veľké písmená).
- False, ak niektorý znak reťazca nie je abeceda.
Príklad 1
Uvidíme fungovanie isalpha()
kód
# Python program to show how the isalpha() function works # Giving a normal string with all the characters as alphabets website = 'Javatpoint' print(f'All the characters of {website} are alphabets: ', website.isalpha()) # Giving the string that contains whitespace name = 'Peter Parker' print(f'All the characters of {name} are alphabets: ', name.isalpha()) # Giving a string that contains the number name = 'Peter2' print(f'All the characters of {name} are alphabets: ', name.isalpha())
Výkon:
All the characters of Javatpoint are alphabets: True All the characters of Peter Parker are alphabets: False All the characters of Peter2 are alphabets: False
Príklad 2
Použitie funkcie isalpha() s klauzulou if-else.
kód
# Python program to show how the isalpha() function works with if-else conditions # Initializing the strings string1 = 'PeterParker' string2 = 'Peter Parker' # Using the if else condition statements # Giving the first string if string1.isalpha() == True: print('All the characters of the given string are alphabet') else: print('All the characters of the given string are not alphabet') # Giving the second string if string2.isalpha() == True: print('All the characters of the given string are alphabet') else: print('All the characters of the given string are not alphabet')
Výkon:
All the characters of the given string are alphabet All the characters of the given string are not alphabet