1. 다음 중 가장 올바르게 API를 정의한 것은 무엇인가요?
① API는 프로그램 간의 통신을 위한 규칙을 정의한 것이다.
② API는 운영체제만이 제공할 수 있다.
③ API마다 별도의 라이브러리가 꼭 필요하다.
④ 공개 API는 대부분 C 나 C++ 같은 저수준 언어만 사용해야 한다.
2. 다음 중 웹 기반 API에서 널리 사용하는 데이터 형식이 아닌 것은 무엇인가요?
① CSV
② JSON
③ XML
④ HTML
3. 다음 중 파이썬에서 웹 URL을 호출하는 데 특화된 패키지는 무엇인가요?
① pandas
② requests
③ json
④ xml
4. 다음 과정에 사용해야 할 함수는 무엇인가요?
파이썬 객체 파이썬 객체
프로그램 A <---------데이터 요청(HTTP)--------- 프로그램 B
-{"name":"혼자 공부하는 데이터 분석"}->
[빈칸] 텍스트 전송 [빈칸]
5. 판다스에서 JSON 문자열을 데이터프레임으로 변환하는 함수는 무엇인가요?
① fromstring()
② json_loads()
③ read_json()
④ json()
6. 다음 중 HTTP GET 방식에 대해 잘못 설명한 것은 무엇인가요?
① 웹 브라우저만이 사용할 수 있는 방식이다.
② 웹 서버에서 필요한 파라미터를 뒙 URL 뒤에 연결하여 전달한다.
③ 파라미터 사이는 &로 구분하고 파라미터와 값 사이는 =로 구분한다.
④ 파라미터를 포함한 전체 URL 길이는 2,000자 내외가 안전하다.
<풀이>
1. 답 ③ API는 운영체제에 국한되지 않는다. API는 규칙을 정의한 것이므로 라이브러리가 항상 필요한 것은 아님. 또한 파이썬이나 자바 같은 고수준 언어에서 공개 API를 사용할 수 있다.
2. 답 ④ HTML은 웹 페이지를 위한 마크업 언어로 일반적인 프로그램 간의 데이터 통신 방법으로는 잘 사용하지 않는다.
3. 답 ② 파이썬에서 널리 사용하는 HTTP 라이브러리는 requests 패키지이다.
4. 답 파이썬 객체는 JSON 문자열로 변환할 때는 json.dumps() 함수, JSON 문자열을 파이썬 객체로 변환할 때는 json.loads() 함수를 사용.
5. ③ fromstring() 함수는 XML 문서를 읽는 xml.etree.ElementTree 모듈의 함수. josn_loads() 함수는 JSON 문자열을 파이썬 객체로 변환해주는 json 패키지의 함수. json() 메서드는 requests.get() 메서드로 호출하여 받은 JSON 문자열을 파이썬 객체로 반환.
6. ① HTTP GET 방식은 웹 브라우저를 포함해 HTTP 프로토콜 규칙을 따라 작성된 파이썬 프로그램에서도 사용할 수 있다. 파이썬에서는 requests 패키지를 사용하면 손쉽게 HTTP GET 방식으로 웹 URL을 호출할 수 있다.