06단계 · 실전으로 넘어가기
help 와 dir — 함수 사용법 찾아보기
자동완성도 인터넷도 없는 환경에서 함수 이름과 사용법을 찾는다.
먼저 알아볼게요
코드로 이동 ↓공식 체험환경 가이드는 "그래프 기능, 단축키, 자동완성 기능 미제공" 이라고 적고 있다. 대신 "help, dir, ? 등 함수를 이용한 참조는 가능" 하다고 명시한다. 가이드가 허용한다고 적은 참조 수단이 이것들이다.
dir(대상) 은 그 대상이 가진 이름들을 전부 나열한다. 목록이 길어서 그대로 보면 소용없고, 조건을 걸어 걸러 내는 것이 요령이다.
[n for n in dir(pd.DataFrame) if n.startswith("group")] 처럼 쓰면 group 으로 시작하는 것만 나온다. 이 한 줄 패턴을 외워 두면 "그 함수 이름이 뭐였더라" 가 해결된다.
help(함수) 는 설명과 인자 목록을 보여 준다. 출력이 아주 길 수 있으니, 이름만 확인할 때는 dir 을, 인자를 확인할 때는 help 를 쓴다.
"이름" in dir(대상) 으로 그 기능이 있는지만 빠르게 확인할 수도 있다. 없는 함수를 붙잡고 있는 시간을 줄여 준다.
이렇게 써요
import pandas as pd
print(len(dir(pd.DataFrame)) > 100)
help(pd.Series.quantile)기억할 한 가지
가이드가 허용한 참조 수단은 help·dir 같은 함수다. dir 을 조건으로 걸러 내는 한 줄을 외워 둔다.
직접 해보기①
① pd.DataFrame 에서 group 으로 시작하는 이름 ② sklearn.ensemble 에서 Forest 가 들어간 이름 ③ pd.Series 에 quantile 이 있는지 ④ scipy.stats 에서 ttest 로 시작하는 이름을 출력하세요.
내 코드 Python
Python 준비 중… 처음 한 번만 내려받아요
들여쓰기: Tab · 편집기에서 나가기: Esc 다음 Tab
실행 결과
실행하면 코드가 출력한 내용이 여기에 나타나요.
막혔을 때
풀이와 비교하기
내 코드와 한 줄씩 비교해 보세요. 풀이를 보는 것만으로 완료되지는 않아요.
import pandas as pd
import sklearn.ensemble
import scipy.stats
print([n for n in dir(pd.DataFrame) if n.startswith("group")])
print([n for n in dir(sklearn.ensemble) if "Forest" in n])
print("quantile" in dir(pd.Series))
print([n for n in dir(scipy.stats) if n.startswith("ttest")])