Python/Python 개발환경
Python 디버깅시 print 대신 IceCream의 ic 사용하세요
webnautes
2024. 11. 14. 19:44
반응형
Python 디버깅시 print 대신 사용할 수 있는 IceCream 패키지의 ic를 다룹니다.
최초작성 2024. 11. 14
ic는 print 함수보다 많은 정보를 출력해줍니다.
from icecream import ic def add(x, y): return x + y print(add(10, 20)) # 30 ic(add(10, 20)) # ic| add(10, 20): 30 |
ic의 출력을 한 줄로 조정할 수 있습니다. ic.disable()를 사용하면 ic의 출력을 막습니다.
from icecream import ic def add(x, y): return x + y # ic 출력을 막습니다. ic.disable() print(add(10, 20)) ic(add(10, 20)) |
30
ic.enable()을 사용하면 ic의 출력을 허용합니다. 함수 호출한 아규먼트와 함수 결과를 같이 출력해줍니다.
from icecream import ic def add(x, y): return x + y # ic 출력을 허용합니다. ic.enable() print(add(10, 20)) ic(add(10, 20)) |
30
ic| add(10, 20): 30
ic 함수가 몇번째 줄에서 호출되었는지 출력하도록 할 수 있습니다.
from icecream import ic def add(x, y): return x + y ic.configureOutput(includeContext=True) print(add(10, 20)) ic(add(10, 20)) |
30
ic| hello.py:11 in <module>- add(10, 20): 30
자료 구조를 출력할때도 정보가 더 많이 출력됩니다.
from icecream import ic data = {'a': 1, 'b': 2, 'c': 3} print(data) # {'a': 1, 'b': 2, 'c': 3} ic(data) # ic| data: {'a': 1, 'b': 2, 'c': 3} print(data['a']) # 1 ic(data['a']) # ic| data['a']: 1 |
참고
https://data-newbie.tistory.com/679
반응형