수색…


소개

IPython은 magics 라는 명령 세트로 파이썬을 확장합니다. 이것들은 이름이 IPython 쉘에 의해 인식되는 % 시작하는 특수 함수입니다. 이름이 단지 1 % 시작하는 마법 은 라인의 나머지 부분을 인수로 취하며 라인 매직 이라고 부릅니다. 이중 퍼센트 기호 %% 시작하는 마법 은 여러 줄의 인수를 취하고 셀 마법 이라고 부릅니다.

% timeit과`% time` 마법

%timeit 매직은 주어진 코드를 여러 번 실행 한 다음 가장 빠른 결과의 속도를 반환합니다.

In [1]: %timeit sum(range(100000))
100 loops, best of 3: 2.91 ms per loop

%%timeit 셀 매직은 코드 블럭의 시간을 %%timeit 데 사용할 수 있습니다.

In [2]: %%timeit
   ...: a = 0
   ...: for i in range(100000):
   ...:     a += i
   ...:
100 loops, best of 3: 9.67 ms per loop

%time 마법은 Unix time 명령과 비슷한 함수의 단일 실행을 곱합니다. %timeit 과 달리 %timeit %time 도 결과를 표시합니다.

In [3]: %time sum(range(100000))
CPU times: user 2.68 ms, sys: 3 µs, total: 2.68 ms
Wall time: 2.69 ms
Out[3]: 4999950000

붙박이 선 및 세포 마술

이름이 단지 1 % 시작하는 마법 은 라인의 나머지 부분을 인수로 취하며 라인 매직 이라고 부릅니다. 이중 퍼센트 기호 %% 시작하는 마법 은 여러 줄의 인수를 취하고 셀 마법 이라고 부릅니다.

일반적으로 사용되는 마법은 코드 조각의 실행 시간을 측정하기 위해 Python의 timeit.timeit 함수를 감싸는 래퍼 인 %timeit 입니다.

In [35]: ra = [random.randint(0,1000) for r in range(1000)]
In [35]: %timeit sorted(ra)
1000 loops, best of 3: 507 µs per loop

셀 마법의 예는 입력을 배시 코드로 실행하기위한 %%bash ( %%script bash 와 동일)입니다.

In [49]: %%bash
    ...: i=3
    ...: while [ $i -ge 0 ]
    ...: do
    ...: echo $i
    ...: i=$(($i-1))
    ...: done
    ...:
3
2
1
0

셀의 끝은 빈 줄로 표시됩니다.

모든 내장 마법을 보려면 %lsmagic 사용 %lsmagic

In [51]: %lsmagic
Out[51]:
Available line magics:
%alias  %alias_magic  %autocall  %autoindent  %automagic  %bookmark  %cd  %cls
%colors  %config  %copy  %cpaste  %ddir  %debug  %dhist  %dirs  %doctest_mode  
%echo  %ed  %edit  %env  %gui  %hist  %history  %killbgscripts  %ldir  %load  
%load_ext  %loadpy  %logoff  %logon  %logstart  %logstate  %logstop  %ls  %lsmagic
%macro  %magic  %matplotlib  %mkdir  %notebook  %page  %paste  %pastebin  %pdb
%pdef  %pdoc  %pfile  %pinfo  %pinfo2  %popd  %pprint  %precision  %profile  
%prun  %psearch  %psource  %pushd  %pwd  %pycat  %pylab  %quickref  %recall  
%rehashx  %reload_ext  %ren  %rep  %rerun  %reset  %reset_selective  %rmdir  %run  
%save  %sc  %set_env  %store  %sx  %system  %tb  %time  %timeit  %unalias  
%unload_ext  %who  %who_ls  %whos  %xdel  %xmode

Available cell magics:
%%!  %%HTML  %%SVG  %%bash  %%capture  %%cmd  %%debug  %%file  %%html  
%%javascript  %%js  %%latex  %%perl  %%prun  %%pypy  %%python  %%python2  %%python3  
%%ruby  %%script  %%sh  %%svg  %%sx  %%system  %%time  %%timeit  %%writefile

Automagic is ON, % prefix IS NOT needed for line magics.

기본 '자동으로 자료'으로 설정되어 있습니다, 따라서 마법이없이 호출 할 수 있습니다 줄 % 접두사 (하지만 세포 기능은 여전히 필요 %% 접두사).



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow