LogIn E-mail
¼³°èÀ̾߱â
Decorators µ¥ÄÚ·¹ÀÌÅÍ
# 53 JMJS    24.2.29 18:26

#Decorators

import time

def tictoc(func):
    def wrapper():
        t1 = time.time()
        func()
        t2 = time.time()-t1
        print(f'Took {t2} seconds')
    return wrapper

@tictoc
def do_this():
    time.sleep(1.3)

@tictoc
def do_that():
    time.sleep(.4)

do_this()
do_that()
print('Done')

#----------------------------------------------------#

def trace(func):
    def wrapper():
        print(func.__name__, 'start...')
        func()
        print(func.__name__, '...end')
    return wrapper

@trace
def hello():
    print('hello')

@trace
def world():
    print('world')

hello()
world()

°Ô½Ã¹°: 61 °Ç, ÇöÀç: 1 / 1 ÂÊ
¹øÈ£ Á¦       ¸ñ ÀÛ¼ºÀÚ µî·ÏÀÏ ¹æ¹®
61  os.path.dirname(os.path.realpath(__file__))) JMJS 25.8.20 142
60  img2rgb.py PIL lambda print end prn sys.argv JMJS 24.6.18 458
59  cv2 image pixel bgr °ª ¼öÁ¤Çϱâ JMJS 24.3.1 493
58  ±ÛÀÚÇǶó¹Ìµå lpyramid.py JMJS 24.3.1 490
57  µñ¼Å³Ê¸® dictionary µñ¼Å³Ê¸® key¿Í value µÚÁý±â ... JMJS 24.3.1 408
56  bus idx2set cap JMJS 24.2.22 463
55  ÆÄÀ̽㠸®½ºÆ®¿¡¼­ ºó ¹®ÀÚ¿­ÀÎ ¿ø¼Ò Á¦°ÅÇϱâ JMJS 24.2.22 453
54  openpyxl JMJS 24.2.22 436
53  Decorators µ¥ÄÚ·¹ÀÌÅÍ JMJS 24.2.29 486
52  walrus operator := and for in list JMJS 24.2.1 461
51  pandas Çà Ãß°¡ JMJS 24.1.28 384
50  split with brackets JMJS 24.1.27 393
49  ÀÌÅÍ·¹ÀÌÅÍ Iterator JMJS 24.1.26 456
48  re regular expression JMJS 24.1.26 398
47  read_excel()ÀÇ ÁöÁ¤ °¡´ÉÇÑ ¿É¼Ç JMJS 24.1.26 437
46  pandas to_excel sheet ¿©·¯Àå excel ÆÄÀÏ ¾²±â Àбâ JMJS 24.1.28 519
45  pandas ¼¿ isna isnull notna notnull JMJS 24.1.28 471
44  tkinter tk1.py JMJS 24.1.25 544
43  pandas _append df2.py JMJS 24.1.25 506
42  ÆÇ´Ù½º pandas DataFrame, list, dictionary, ... JMJS 24.1.25 532
41  f-string JMJS 24.6.18 506
40  pandas JMJS 24.1.17 388
39  __add__ __getattr__ __getitem__ __setitem__ JMJS 24.1.24 448
38  ÆÄÀ̽㠼³Ä¡°æ·Î È®ÀÎ JMJS 23.12.4 397
37  deepcopy JMJS 23.11.24 413
36  def func(*args): JMJS 23.11.24 480
35  sys.version_info JMJS 23.11.19 446
34  argparse add_argument parse_args JMJS 24.1.17 400
33  [bpy]bone2_wr.py JMJS 23.9.23 457
32  [bpy]bm.verts depsgraph JMJS 23.9.23 405
31  [bpy]keyframe_insert JMJS 23.9.23 415
30  [bpy]key_blocks JMJS 23.9.23 420
29  def abc (a=10,b=20,c=30) JMJS 23.8.1 422
28  shape prj JMJS 23.10.29 492
27  yaml JMJS 23.11.30 506
26  getopt arg argv JMJS 23.7.26 474
25  pg.mouse.get_pressed() pg.mouse.get_pos() JMJS 22.11.20 637
24  pg.MOUSEBUTTONDOWN event.button JMJS 22.11.20 601
23  ¸ðµÎÀÇ ÆÄÀ̽ã - 20Àϸ¸¿¡¹è¿ì´Â ÇÁ·Î±×·¡¹Ö ±âÃÊ JMJS 20.1.8 636
22  python -m pip install -U pip JMJS 19.11.25 548
21  get =lambda i,m ... JMJS 19.11.13 628
20  2Â÷¿ø ¸®½ºÆ®, Æ©Çà JMJS 19.11.13 621
19  [turtle]def polygon3(n,c,d) JMJS 19.11.11 628
18  [turtle]def polygon2(n,a) JMJS 19.11.11 656
17  def factorial(n) JMJS 19.11.11 543
16  def sum_func(n) JMJS 19.11.11 544
15  def hello() fun1(a) fun2(a,b) JMJS 19.11.11 545
14  while sum JMJS 19.11.11 626
13  random calculation JMJS 19.11.11 540
12  turtle random JMJS 19.11.11 539
11  import time time.time JMJS 19.11.11 647
10  turtle begin_fill end_fill JMJS 19.11.11 536
9  if else JMJS 19.11.11 543
8  input JMJS 19.11.11 545
7  list JMJS 24.3.1 690
6  turtle triangle JMJS 19.11.11 587
5  for range JMJS 19.11.11 553
4  ¸ðµâ »ç¿ëÇϱâ JMJS 19.11.11 609
3  import ÆÄÀ̽㠸ðµâ °¡Á®´Ù ¾²±â JMJS 19.11.11 609
1  print ÁÙ¹Ù²Þ JMJS 19.11.11 624
 ^_^ 70.1.1
[1]