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 100
60  img2rgb.py PIL lambda print end prn sys.argv JMJS 24.6.18 365
59  cv2 image pixel bgr °ª ¼öÁ¤Çϱâ JMJS 24.3.1 393
58  ±ÛÀÚÇǶó¹Ìµå lpyramid.py JMJS 24.3.1 429
57  µñ¼Å³Ê¸® dictionary µñ¼Å³Ê¸® key¿Í value µÚÁý±â ... JMJS 24.3.1 360
56  bus idx2set cap JMJS 24.2.22 393
55  ÆÄÀ̽㠸®½ºÆ®¿¡¼­ ºó ¹®ÀÚ¿­ÀÎ ¿ø¼Ò Á¦°ÅÇϱâ JMJS 24.2.22 376
54  openpyxl JMJS 24.2.22 376
53  Decorators µ¥ÄÚ·¹ÀÌÅÍ JMJS 24.2.29 394
52  walrus operator := and for in list JMJS 24.2.1 375
51  pandas Çà Ãß°¡ JMJS 24.1.28 342
50  split with brackets JMJS 24.1.27 358
49  ÀÌÅÍ·¹ÀÌÅÍ Iterator JMJS 24.1.26 380
48  re regular expression JMJS 24.1.26 351
47  read_excel()ÀÇ ÁöÁ¤ °¡´ÉÇÑ ¿É¼Ç JMJS 24.1.26 378
46  pandas to_excel sheet ¿©·¯Àå excel ÆÄÀÏ ¾²±â Àбâ JMJS 24.1.28 465
45  pandas ¼¿ isna isnull notna notnull JMJS 24.1.28 400
44  tkinter tk1.py JMJS 24.1.25 427
43  pandas _append df2.py JMJS 24.1.25 408
42  ÆÇ´Ù½º pandas DataFrame, list, dictionary, ... JMJS 24.1.25 416
41  f-string JMJS 24.6.18 433
40  pandas JMJS 24.1.17 352
39  __add__ __getattr__ __getitem__ __setitem__ JMJS 24.1.24 390
38  ÆÄÀ̽㠼³Ä¡°æ·Î È®ÀÎ JMJS 23.12.4 359
37  deepcopy JMJS 23.11.24 369
36  def func(*args): JMJS 23.11.24 403
35  sys.version_info JMJS 23.11.19 406
34  argparse add_argument parse_args JMJS 24.1.17 361
33  [bpy]bone2_wr.py JMJS 23.9.23 395
32  [bpy]bm.verts depsgraph JMJS 23.9.23 369
31  [bpy]keyframe_insert JMJS 23.9.23 376
30  [bpy]key_blocks JMJS 23.9.23 381
29  def abc (a=10,b=20,c=30) JMJS 23.8.1 385
28  shape prj JMJS 23.10.29 414
27  yaml JMJS 23.11.30 429
26  getopt arg argv JMJS 23.7.26 413
25  pg.mouse.get_pressed() pg.mouse.get_pos() JMJS 22.11.20 519
24  pg.MOUSEBUTTONDOWN event.button JMJS 22.11.20 528
23  ¸ðµÎÀÇ ÆÄÀ̽ã - 20Àϸ¸¿¡¹è¿ì´Â ÇÁ·Î±×·¡¹Ö ±âÃÊ JMJS 20.1.8 574
22  python -m pip install -U pip JMJS 19.11.25 511
21  get =lambda i,m ... JMJS 19.11.13 548
20  2Â÷¿ø ¸®½ºÆ®, Æ©Çà JMJS 19.11.13 532
19  [turtle]def polygon3(n,c,d) JMJS 19.11.11 555
18  [turtle]def polygon2(n,a) JMJS 19.11.11 566
17  def factorial(n) JMJS 19.11.11 501
16  def sum_func(n) JMJS 19.11.11 510
15  def hello() fun1(a) fun2(a,b) JMJS 19.11.11 507
14  while sum JMJS 19.11.11 591
13  random calculation JMJS 19.11.11 500
12  turtle random JMJS 19.11.11 506
11  import time time.time JMJS 19.11.11 612
10  turtle begin_fill end_fill JMJS 19.11.11 501
9  if else JMJS 19.11.11 500
8  input JMJS 19.11.11 505
7  list JMJS 24.3.1 570
6  turtle triangle JMJS 19.11.11 527
5  for range JMJS 19.11.11 517
4  ¸ðµâ »ç¿ëÇϱâ JMJS 19.11.11 552
3  import ÆÄÀ̽㠸ðµâ °¡Á®´Ù ¾²±â JMJS 19.11.11 534
1  print ÁÙ¹Ù²Þ JMJS 19.11.11 571
 ^_^ 70.1.1
[1]