Új hozzászólás Aktív témák
-
Dekorátorban könnyű megvalósítani olyan dolgokat, amiket függvényen belül plusz hívásokkal tudnál csak megoldani. Ráadásul szebben újrahasználható, mintha a függvényen belül helyeznénk el, pl.:
class User:
...
def authenticate(self, username, password):
...
#bejelentkezik
@is_authenticated
def change_password(self):
...
#jelszót vált
@is_authenticated
@is_admin
def change_password_for_others(self, user):
...
#jelszót vált másik usernélvagy pl logolási szinteket adhatunk meg fv hívásoknak és a konfigurációban beállított logolási szintnek megfelelően lesz (vagy nem lesz) logolva az adott esemény:
class User:
...
@log(loglevel=1)
def authenticate(self, username, password):
...
#bejelentkezik
@log(loglevel=1)
@is_authenticated
def change_password(self):
...
#jelszót vált
@log(loglevel=2)
@is_authenticated
@is_admin
def change_password_for_others(self, user):
...
#jelszót vált másik usernél -
Dekorátor pl a input függvény felülírására:
Az első függvény (mock-olt) nem fog bekérni semmit a konzolon, fixen megkapja a test input lista sorait, de a második igen.from unittest import mock
from typing import Callable
test_inputs = [
"line 1",
"line 2",
"line 3"]
@mock.patch('builtins.input', side_effect=test_inputs)
def letme_test_it(input: Callable) -> None:
i1, i2, i3 = input(), input(), input()
print(i1, i2, i3)
def letme_provide_input():
i1, i2, i3 = input(), input(), input()
print(i1, i2, i3)
if __name__ == '__main__':
letme_test_it()
letme_provide_input()
Új hozzászólás Aktív témák
- Hogy is néznek ki a gépeink?
- Azonnali alaplapos kérdések órája
- Samsung Galaxy A56 - megbízható középszerűség
- Logitech Z906
- A Qwertykeys új klaviatúrái szépek, igényesek és sokrétűek
- Minden, ami hőszivattyú
- Építő/felújító topik
- Milyen egeret válasszak?
- Milyen autót vegyek?
- Okos Otthon / Smart Home
- További aktív témák...
- Asztali PC R5 5500 RTX 2060 16GB DDR4 512GB NVME
- Core I7 4K MAGYAR ERŐMŰ Lenovo P1 Gen3 ( I7 10850H 32Gb 1 Tb) Tervező/vágó/gamer - Nvidia 4Gb!
- i7 11gen Lenovo ThinkPad T14s gen2 14" 4K UHD Kijelzővel!
- Bomba ár! Dell Latitude 7200 2-in-1: i5-8365U I 8GB I 256SSD I 12" FHD+ Touch I Cam I W11 I Gari!
- Core I7 4K OLED ERŐMŰ Lenovo P1 Gen3 ( I7 10850H 32Gb 1 Tb) ÉRINTŐS Tervező/vágó/gamer - Nvidia 4Gb!
- Lenovo ThinkPad X1 Yoga G6 (6th Gen) - i7-1185G7, 32GB, 1TB SSD, 4K multitouch + TOLL (ELKELT)
- AKCÓ! HTC VIVE Pro 2 virtuális valóság szemüveg garanciával hibátlan működéssel
- HP 150W töltők (19.5V 7.7A) kis kék, kerek, 4.5x3.0mm
- ÁRGARANCIA! Épített KomPhone i5 12400F 16/32/64GB RAM RTX 5050 8GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest

