%global _empty_manifest_terminate_build 0 Name: python-ttictoc Version: 0.5.6 Release: 1 Summary: Time parts of your code easily. License: MIT URL: https://github.com/hector-sab/ttictoc Source0: https://mirrors.nju.edu.cn/pypi/web/packages/57/d6/491931c4a621bbbc7d3731669be92766c6d5da9219d982b09c495ac9e5f4/ttictoc-0.5.6.tar.gz BuildArch: noarch %description # ttictoc Time execution of blocks of code. ## Tested against python 3.6, python 3.7, and 3.8 ## How to install From pip ``` pip install ttictoc ``` or download this repo and do ``` pip install . ``` ## TicToc The easiest way to time something is with `tic` and `toc` ```python import time from ttictoc import tic,toc tic() time.sleep(1) elapsed = toc() print('Elapsed time:',elapsed) ``` You can execute multiple tocs in a matlab-like fashon ``` import time from ttictoc import tic,toc tic() for i in range(2): tic() time.sleep(1) elapsed = toc() print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',toc()) ``` ## Timer Class It works just like `tic`,`toc`. ```python import time from ttictoc import Timer # Simple t = Timer() t.start() time.sleep(1) elapsed = t.stop() print('Elapsed time:',elapsed) # Nested t.start() for i in range(2): t.start() time.sleep(1) elapsed = t.stop() print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',t.stop()) ``` ## Context manager You can also use it as context manager ```python import time from ttictoc import Timer # Default with Timer(): time.sleep(1) # With out verbose with Timer(verbose=False) as T: time.sleep(1) print('Elapsed time:',T.elapsed) # With default verbose message with Timer(verbose_msg=f'[User msg][{time.time()}] Elapsed time: {{}}'): time.sleep(1) ``` ## Deactivating matlab-like nesting You can deactivate the matlab-like nesting. In this case calling start will update the global starting time for toc. However, you can have nested tics by giving a `key` to start and stop. ```python import time from ttictoc import Timer,tic2,toc2 tic2() for i in range(2): tic2() time.sleep(1) elapsed = toc2() print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',toc2()) t = Timer(matlab_like=False) t.start() time.sleep(1) t.start() # Restarts the starting point time.sleep(1) elapsed = t.stop() print('Elapsed time:',elapsed) # ~1 second # Nested t.start(key='Init') for i in range(2): t.start(key=i) time.sleep(1) elapsed = t.stop(key=i) print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',t.stop('Init')) print('\n[OUT LOOP][Init] Elapsed time:',t.stop('Init')) print('[OUT LOOP][0] Elapsed time:',t.stop(0)) print('[OUT LOOP][1] Elapsed time:',t.stop(1)) ``` ## Specify timing method By default, `Timer` (and `tic`,`toc`) use `timeit.default_timer`. However, the timing function can be selected as follow. ```python import time from ttictoc import Timer t = Timer(func_time=time.clock) t.start() time.sleep(5) elapsed = t.stop() print('Elapsed time:',elapsed) ``` %package -n python3-ttictoc Summary: Time parts of your code easily. Provides: python-ttictoc BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-ttictoc # ttictoc Time execution of blocks of code. ## Tested against python 3.6, python 3.7, and 3.8 ## How to install From pip ``` pip install ttictoc ``` or download this repo and do ``` pip install . ``` ## TicToc The easiest way to time something is with `tic` and `toc` ```python import time from ttictoc import tic,toc tic() time.sleep(1) elapsed = toc() print('Elapsed time:',elapsed) ``` You can execute multiple tocs in a matlab-like fashon ``` import time from ttictoc import tic,toc tic() for i in range(2): tic() time.sleep(1) elapsed = toc() print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',toc()) ``` ## Timer Class It works just like `tic`,`toc`. ```python import time from ttictoc import Timer # Simple t = Timer() t.start() time.sleep(1) elapsed = t.stop() print('Elapsed time:',elapsed) # Nested t.start() for i in range(2): t.start() time.sleep(1) elapsed = t.stop() print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',t.stop()) ``` ## Context manager You can also use it as context manager ```python import time from ttictoc import Timer # Default with Timer(): time.sleep(1) # With out verbose with Timer(verbose=False) as T: time.sleep(1) print('Elapsed time:',T.elapsed) # With default verbose message with Timer(verbose_msg=f'[User msg][{time.time()}] Elapsed time: {{}}'): time.sleep(1) ``` ## Deactivating matlab-like nesting You can deactivate the matlab-like nesting. In this case calling start will update the global starting time for toc. However, you can have nested tics by giving a `key` to start and stop. ```python import time from ttictoc import Timer,tic2,toc2 tic2() for i in range(2): tic2() time.sleep(1) elapsed = toc2() print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',toc2()) t = Timer(matlab_like=False) t.start() time.sleep(1) t.start() # Restarts the starting point time.sleep(1) elapsed = t.stop() print('Elapsed time:',elapsed) # ~1 second # Nested t.start(key='Init') for i in range(2): t.start(key=i) time.sleep(1) elapsed = t.stop(key=i) print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',t.stop('Init')) print('\n[OUT LOOP][Init] Elapsed time:',t.stop('Init')) print('[OUT LOOP][0] Elapsed time:',t.stop(0)) print('[OUT LOOP][1] Elapsed time:',t.stop(1)) ``` ## Specify timing method By default, `Timer` (and `tic`,`toc`) use `timeit.default_timer`. However, the timing function can be selected as follow. ```python import time from ttictoc import Timer t = Timer(func_time=time.clock) t.start() time.sleep(5) elapsed = t.stop() print('Elapsed time:',elapsed) ``` %package help Summary: Development documents and examples for ttictoc Provides: python3-ttictoc-doc %description help # ttictoc Time execution of blocks of code. ## Tested against python 3.6, python 3.7, and 3.8 ## How to install From pip ``` pip install ttictoc ``` or download this repo and do ``` pip install . ``` ## TicToc The easiest way to time something is with `tic` and `toc` ```python import time from ttictoc import tic,toc tic() time.sleep(1) elapsed = toc() print('Elapsed time:',elapsed) ``` You can execute multiple tocs in a matlab-like fashon ``` import time from ttictoc import tic,toc tic() for i in range(2): tic() time.sleep(1) elapsed = toc() print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',toc()) ``` ## Timer Class It works just like `tic`,`toc`. ```python import time from ttictoc import Timer # Simple t = Timer() t.start() time.sleep(1) elapsed = t.stop() print('Elapsed time:',elapsed) # Nested t.start() for i in range(2): t.start() time.sleep(1) elapsed = t.stop() print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',t.stop()) ``` ## Context manager You can also use it as context manager ```python import time from ttictoc import Timer # Default with Timer(): time.sleep(1) # With out verbose with Timer(verbose=False) as T: time.sleep(1) print('Elapsed time:',T.elapsed) # With default verbose message with Timer(verbose_msg=f'[User msg][{time.time()}] Elapsed time: {{}}'): time.sleep(1) ``` ## Deactivating matlab-like nesting You can deactivate the matlab-like nesting. In this case calling start will update the global starting time for toc. However, you can have nested tics by giving a `key` to start and stop. ```python import time from ttictoc import Timer,tic2,toc2 tic2() for i in range(2): tic2() time.sleep(1) elapsed = toc2() print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',toc2()) t = Timer(matlab_like=False) t.start() time.sleep(1) t.start() # Restarts the starting point time.sleep(1) elapsed = t.stop() print('Elapsed time:',elapsed) # ~1 second # Nested t.start(key='Init') for i in range(2): t.start(key=i) time.sleep(1) elapsed = t.stop(key=i) print('[IN LOOP] Elapsed time:',elapsed) print('[OUT LOOP] Elapsed time:',t.stop('Init')) print('\n[OUT LOOP][Init] Elapsed time:',t.stop('Init')) print('[OUT LOOP][0] Elapsed time:',t.stop(0)) print('[OUT LOOP][1] Elapsed time:',t.stop(1)) ``` ## Specify timing method By default, `Timer` (and `tic`,`toc`) use `timeit.default_timer`. However, the timing function can be selected as follow. ```python import time from ttictoc import Timer t = Timer(func_time=time.clock) t.start() time.sleep(5) elapsed = t.stop() print('Elapsed time:',elapsed) ``` %prep %autosetup -n ttictoc-0.5.6 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-ttictoc -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Fri May 05 2023 Python_Bot - 0.5.6-1 - Package Spec generated