Mnoho programátorů má Python rád pro jeho jednoduchou a stručnou syntaxi. Tyto recepty Pythonu jsou malé ukázkové programy, které můžete použít k řešení běžných každodenních problémů.
Použijte tyto snadno stravitelné recepty Pythonu a posuňte efektivitu kódování na další úroveň.
1. Extrahujte podmnožinu slovníku
Pomocí metody porozumění slovníku můžete extrahovat podmnožinu slovníku.
test_marks = {
'Alex': 50,
'Adam': 43,
'Eva': 96,
'Smith': 66,
'Andrew': 74
}větší_než_60 = { klíč: hodnota pro klíč, hodnota v test_marks.items(), pokud hodnota > 60 }
tisknout (greater_than_60)
studenti = { 'Alex', 'Adam', 'Andrew'}
a_students_dict = { klíč: hodnota pro klíč, hodnota v test_marks.items() if key in students }
tisknout (a_students_dict)
Výstup:
{'Eva': 96, 'Smith': 66, 'Andrew': 74}
{'Alex': 50, 'Adam': 43, 'Andrew': 74}
2. Hledat a nahradit text
Jednoduchý textový vzor v řetězci můžete vyhledat a nahradit pomocí str.replace() metoda.
str = "Peter Piper si utrhl pecičku nakládané papriky"
str = str.replace("Piper", "Parker")
tisknout (str)
Výstup:
Peter Parker utrhl svačinu nakládaných paprik
Pro složitější vzory můžete použít sub() metoda z re knihovna. Regulární výrazy v Pythonu u komplikovaných vzorů je úkol mnohem jednodušší.
import re
str = "toto je název proměnné"
vysledek = re.sub('\s', '_', str)
tisknout (výsledek)
Výstup:
this_is_a_variable_name
Výše uvedený kód nahrazuje prázdný znak znakem podtržení.
3. Prvky sekvence filtrů
Pomocí můžete filtrovat prvky ze sekvence podle určitých podmínek porozumění seznamu.
seznam = [32, 45, 23, 78, 56, 87, 25, 89, 66]
# Seznam filtrování, kde jsou prvky větší než 50
filter_list = [ele pro ele v seznamu, pokud ele>50]
tisknout (filtrovaný_seznam)
Výstup:
[78, 56, 87, 89, 66]
4. Zarovnat textové řetězce
Textové řetězce můžete zarovnat pomocí jen(), rjust(), a centrum() metody. Tyto metody zarovnají doleva, doprava a vycentrují řetězec v poli dané šířky.
str = "Python je nejlepší"
tisknout (str.ljust (20))
tisk (str.center (20))
tisknout (str.rjust (20))
Výstup:
Python je nejlepší
Python je nejlepší
Python je nejlepší
Tyto metody také přijímají volitelný znak výplně.
str = "Python je nejlepší"
tisknout (str.ljust (20, '#'))
tisk (str.center (20, '#'))
tisknout (str.rjust (20, '#'))
Výstup:
Python je nejlepší######
###Python je nejlepší###
######Python je nejlepší
Poznámka: Můžete také použít formát() funkce k zarovnání řetězců.
5. Převést řetězce na datumy
Můžete použít strptime() metoda z čas schůzky třídy převést řetězcovou reprezentaci data/času na objekt data.
z datetime import datetime
str = '2022-01-03'
tisknout (str)
tisknout (typ (str))
datetime_object = datetime.strptime (str, '%Y-%m-%d')
tisknout (datetime_object)
tisknout (typ (datetime_object))
Výstup:
2022-01-03
2022-01-03 00:00:00
Poznámka: Pokud argument řetězce není konzistentní s parametrem format, strptime() metoda nebude fungovat.
6. Rozbalte sekvenci do samostatných proměnných
Libovolnou sekvenci můžete rozbalit do proměnných pomocí operace přiřazení. Tato metoda funguje, pokud se počet proměnných a struktura sekvence vzájemně shodují.
Rozbalování n-tic
tup = (12, 23, 34, 45, 56)
a, b, c, d, e = tup
tisknout (a)
tisknout (d)
Výstup:
12
45
Rozbalovací seznamy
seznam = ["Ahoj", 23, 0,34, (55, 76)]
a, b, c, d = seznam
tisknout (a)
tisknout (d)
Výstup:
Ahoj
(55, 76)
Rozbalení řetězců
str = "Ahoj"
ch1, ch2, ch3, ch4, ch5 = str
tisknout (ch1)
Výstup:
H
Pokud se počet proměnných a struktura sekvence neshodují, zobrazí se chyba:
seznam = ["Ahoj", 23, 0,34, (55, 76)]
a, b, c = seznam
Výstup:
Zpětné sledování (poslední poslední hovor):
Soubor "unpack-list-error.py", řádek 2, in
a, b, c = seznam
ValueError: příliš mnoho hodnot k rozbalení (očekává se 3)
7. Psaní funkcí, které přijímají libovolný počet pozičních argumentů
Musíte použít a * argument přijmout libovolný počet pozičních argumentů.
def sumOfElements (firstTerm, *otherTerms):
s = první termín + součet (ostatní podmínky)
tisknout (y)
sumOfElements (10, 10, 10, 10, 10)
sumOfElements (10)
sumOfElements (10, 10, 10)
Výstup:
50
10
30
8. Vrátí více hodnot z funkce
Z funkce můžete vrátit více hodnot pomocí n-tice, seznamu nebo slovníku.
def returnMultipleSports():
sport1 = "fotbal"
sport2 = "kriket"
sport3 = "basketbal"
návrat sport1, sport2, sport3
sport = returnMultipleSports()
tisknout (sportovní)
Výstup:
('fotbal', 'kriket', 'basketbal')
Ve výše uvedeném příkladu funkce vrací n-tici. N-tici můžete rozbalit a použít vrácené hodnoty.
def returnMultipleLanguages():
jazyk1 = "angličtina"
jazyk2 = "hindština"
jazyk 3 = "francouzština"
návrat [jazyk1, jazyk2, jazyk3]
jazyky = returnMultipleLanguages()
tisknout (jazyky)
Výstup:
['angličtina', 'hindština', 'francouzština']
V tomto příkladu funkce vrací seznam.
9. Iterujte obráceně
Sekvencí můžete iterovat v opačném pořadí pomocí obrácený () funkce, rozsah() nebo pomocí techniky krájení.
Opačná iterace Pomocí funkce reversed().
seznam1 = [1, 2, 3, 4, 5, 6, 7]
pro prvek obráceně (seznam1):
tisknout (prvek)
Výstup:
7
6
5
4
3
2
1
Opačná iterace Pomocí funkce range().
seznam1 = [1, 2, 3, 4, 5, 6, 7]
pro i v rozsahu (délka (seznam1) - 1, -1, -1):
tisknout (seznam1[i])
Výstup:
7
6
5
4
3
2
1
Opačné opakování pomocí techniky krájení
seznam1 = [1, 2, 3, 4, 5, 6, 7]
pro prvek v seznamu1[::-1]:
tisknout (prvek)
Výstup:
7
6
5
4
3
2
1
10. Čtení a zápis JSON do souboru
S daty JSON můžete pracovat pomocí vestavěného json balíček v Pythonu.
Zápis JSON do souboru
JSON můžete zapsat do souboru pomocí json.dump() metoda.
import json
jazyky = {
"Python": "Guido van Rossum",
"C++": "Bjarne Stroustrup",
"Java": "James Gosling"
}
s open("lang.json", "w") jako výstup:
json.dump (jazyky, výstup)
Tím se vytvoří nový soubor s názvem lang.json.
Čtení JSON ze souboru
JSON můžete číst ze souboru pomocí json.load() funkce. Tato funkce načte data JSON ze souboru JSON do slovníku.
import json
s open('lang.json', 'r') jako o:
jsonData = json.load (o)
tisknout (jsonData)
Výstup:
{'Python': 'Guido van Rossum', 'C++': 'Bjarne Stroustrup', 'Java': 'James Gosling'}
11. Zápis do souboru, který ještě neexistuje
Pokud chcete zapisovat do souboru pouze v případě, že ještě neexistuje, musíte soubor otevřít X režim (výhradní režim tvorby).
s open('lorem.txt', 'x') jako f:
f.write('lorem ipsum')
Pokud soubor lorem.txt již existuje, tento kód způsobí, že Python vyvolá a FileExistsError.
Pokud se chcete podívat na úplný zdrojový kód použitý v tomto článku, zde je úložiště GitHub.
Udělejte svůj kód robustním pomocí vestavěných funkcí Pythonu
Použijte funkce k rozdělení programu na modulární části a provádění specifických úkolů. Python poskytuje mnoho vestavěných funkcí, jako je rozsah(), plátek(), seřazeno(), břišní svaly(), a tak dále, které vám mohou hodně usnadnit úkoly. Využijte tyto vestavěné funkce k napsání čitelnějšího a funkčnějšího kódu.
20 funkcí Pythonu, které byste měli znát
Přečtěte si další
Související témata
- Programování
- Krajta
O autorovi
Yuvraj je vysokoškolským studentem informatiky na univerzitě v Dillí v Indii. Je nadšený pro Full Stack Web Development. Když nepíše, zkoumá hloubku různých technologií.
Přihlaste se k odběru našeho newsletteru
Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné e-knihy a exkluzivní nabídky!
Chcete-li se přihlásit k odběru, klikněte sem