Ipython: for ๋ฃจํ”„ ๋‚ด๋ถ€์˜ ํ•จ์ˆ˜ ๋‚ด์—์„œ ๋ฐ˜๋ณต์ ์œผ๋กœ ํ˜ธ์ถœ๋  ๋•Œ IPython.embed()๋ฅผ ์ด์Šค์ผ€์ดํ”„ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2016๋…„ 01์›” 20์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: ipython/ipython

๋ช…๋ น์ค„์—์„œ foo.py ๋ฅผ ์‹คํ–‰ ์ค‘์ด๋ฉฐ for ๋ฃจํ”„๊ฐ€ ์žˆ๋Š” ํ•จ์ˆ˜๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๋ถ€์—๋Š” IPython.embed() ๋ฌธ์ด ์žˆ๋Š” ํ•จ์ˆ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํ•ด๋‹น ์ง€์—ญ ๋ณ€์ˆ˜์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•จ์ˆ˜ ๋‚ด์˜ ํ•ด๋‹น ์ง€์ ์—์„œ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์ž„๋ฒ ๋””๋“œ ์ธํ„ฐํ”„๋ฆฌํ„ฐ์—์„œ ํƒˆ์ถœํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์ƒˆ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋งŒ ์—ด๋ฆฌ๋ฉฐ(for ๋ฃจํ”„์˜ ๊ฒฝ์šฐ ์ตœ๋Œ€ k ๋ฒˆ) ํ•ด๋‹น ํ„ฐ๋ฏธ๋„์„ ํšจ๊ณผ์ ์œผ๋กœ ์ž ๊ธ‰๋‹ˆ๋‹ค.

ipdb ์˜ q ์™€ ์œ ์‚ฌํ•œ ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜๋ฉด ์ฆ‰์‹œ ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•˜๊ณ  foo.py ๊ฐ€ ์‹คํ–‰๋œ CLI๋กœ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰์„ ์™„์ „ํžˆ ์ค‘์ง€ํ•˜๋Š” ๋‹จ์ผ ๋ช…๋ น์ด ์žˆ์œผ๋ฉด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. %kill_embedded (์˜ˆ, ํ™•์‹คํ•ฉ๋‹ˆ๋‹ค)
  2. exit
  3. "ctrl + c"(์„ธ ๋ฒˆ)

๋ชจ๋“  3 ๋Œ“๊ธ€

%kill_embedded ์‹œ๋„ - ๋ฃจํ”„์—์„œ ๋ฒ—์–ด๋‚˜์ง€ ์•Š์ง€๋งŒ ์ดํ›„์˜ ๋ชจ๋“  embed() ํ˜ธ์ถœ์„ no-ops๋กœ ๋งŒ๋“ค์–ด ๋‚˜๋จธ์ง€ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ์‹คํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰์„ ์™„์ „ํžˆ ์ค‘์ง€ํ•˜๋Š” ๋‹จ์ผ ๋ช…๋ น์ด ์žˆ์œผ๋ฉด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. %kill_embedded (์˜ˆ, ํ™•์‹คํ•ฉ๋‹ˆ๋‹ค)
  2. exit
  3. "ctrl + c"(์„ธ ๋ฒˆ)

%exit_raise ๋Š” ์™ธ๋ถ€ ์ปจํ…์ŠคํŠธ์— ์˜ˆ์™ธ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค๊ณ  ์ฝ”๋“œ๊ฐ€ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰