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 65
60  img2rgb.py PIL lambda print end prn sys.argv JMJS 24.6.18 314
59  cv2 image pixel bgr °ª ¼öÁ¤Çϱâ JMJS 24.3.1 335
58  ±ÛÀÚÇǶó¹Ìµå lpyramid.py JMJS 24.3.1 376
57  µñ¼Å³Ê¸® dictionary µñ¼Å³Ê¸® key¿Í value µÚÁý±â ... JMJS 24.3.1 329
56  bus idx2set cap JMJS 24.2.22 327
55  ÆÄÀ̽㠸®½ºÆ®¿¡¼­ ºó ¹®ÀÚ¿­ÀÎ ¿ø¼Ò Á¦°ÅÇϱâ JMJS 24.2.22 326
54  openpyxl JMJS 24.2.22 336
53  Decorators µ¥ÄÚ·¹ÀÌÅÍ JMJS 24.2.29 338
52  walrus operator := and for in list JMJS 24.2.1 327
51  pandas Çà Ãß°¡ JMJS 24.1.28 314
50  split with brackets JMJS 24.1.27 329
49  ÀÌÅÍ·¹ÀÌÅÍ Iterator JMJS 24.1.26 341
48  re regular expression JMJS 24.1.26 321
47  read_excel()ÀÇ ÁöÁ¤ °¡´ÉÇÑ ¿É¼Ç JMJS 24.1.26 329
46  pandas to_excel sheet ¿©·¯Àå excel ÆÄÀÏ ¾²±â Àбâ JMJS 24.1.28 362
45  pandas ¼¿ isna isnull notna notnull JMJS 24.1.28 351
44  tkinter tk1.py JMJS 24.1.25 379
43  pandas _append df2.py JMJS 24.1.25 356
42  ÆÇ´Ù½º pandas DataFrame, list, dictionary, ... JMJS 24.1.25 358
41  f-string JMJS 24.6.18 378
40  pandas JMJS 24.1.17 323
39  __add__ __getattr__ __getitem__ __setitem__ JMJS 24.1.24 350
38  ÆÄÀ̽㠼³Ä¡°æ·Î È®ÀÎ JMJS 23.12.4 332
37  deepcopy JMJS 23.11.24 341
36  def func(*args): JMJS 23.11.24 345
35  sys.version_info JMJS 23.11.19 378
34  argparse add_argument parse_args JMJS 24.1.17 332
33  [bpy]bone2_wr.py JMJS 23.9.23 361
32  [bpy]bm.verts depsgraph JMJS 23.9.23 342
31  [bpy]keyframe_insert JMJS 23.9.23 347
30  [bpy]key_blocks JMJS 23.9.23 354
29  def abc (a=10,b=20,c=30) JMJS 23.8.1 358
28  shape prj JMJS 23.10.29 370
27  yaml JMJS 23.11.30 382
26  getopt arg argv JMJS 23.7.26 376
25  pg.mouse.get_pressed() pg.mouse.get_pos() JMJS 22.11.20 467
24  pg.MOUSEBUTTONDOWN event.button JMJS 22.11.20 475
23  ¸ðµÎÀÇ ÆÄÀ̽ã - 20Àϸ¸¿¡¹è¿ì´Â ÇÁ·Î±×·¡¹Ö ±âÃÊ JMJS 20.1.8 517
22  python -m pip install -U pip JMJS 19.11.25 484
21  get =lambda i,m ... JMJS 19.11.13 502
20  2Â÷¿ø ¸®½ºÆ®, Æ©Çà JMJS 19.11.13 489
19  [turtle]def polygon3(n,c,d) JMJS 19.11.11 504
18  [turtle]def polygon2(n,a) JMJS 19.11.11 512
17  def factorial(n) JMJS 19.11.11 477
16  def sum_func(n) JMJS 19.11.11 482
15  def hello() fun1(a) fun2(a,b) JMJS 19.11.11 481
14  while sum JMJS 19.11.11 562
13  random calculation JMJS 19.11.11 473
12  turtle random JMJS 19.11.11 481
11  import time time.time JMJS 19.11.11 586
10  turtle begin_fill end_fill JMJS 19.11.11 475
9  if else JMJS 19.11.11 475
8  input JMJS 19.11.11 476
7  list JMJS 24.3.1 512
6  turtle triangle JMJS 19.11.11 481
5  for range JMJS 19.11.11 490
4  ¸ðµâ »ç¿ëÇϱâ JMJS 19.11.11 508
3  import ÆÄÀ̽㠸ðµâ °¡Á®´Ù ¾²±â JMJS 19.11.11 495
1  print ÁÙ¹Ù²Þ JMJS 19.11.11 540
 ^_^ 70.1.1
[1]