본문 바로가기
프로그래밍/Python

[인공지능(AI) 기초 다지기] CSV, WEB, XML, JSON 4가지 데이터 형식 개념

by hi-rachel 2023. 1. 31.

* Python data handling

 

💡 아래 내용은 부스트코스(boostcourse) 인공지능(AI) 기초 다지기 강의를 듣고 공부하며 내용을 정리한 글입니다. 더 자세한 내용은 실제 강의를 들어보길 추천합니다 😃

 

🐍 파이썬에서 다룰 수 있는 CSV, WEB, XML, JSON 4가지 데이터 저장 방식

 

📝 Contents

- CSV

- WEB

- XML

- JSON

 

 


CSV(Comma Separate Values)

- 필드를 쉼표(,)로 구분한 텍스트 파일

- 엑셀 양식의 데이터 프로그램에 상관없이 쓰기 위한 데이터 형식

 


WEB(World Wide Web_WWW 줄여서 WEB)

- 우리가 늘 쓰는 인터넷 공간의 정식 명칭

- 팀 버너스리에 의해 1989년 처음 제안되었으며, 원래는 물리학자들간 정보 교환을 위해 사용됨

- 데이터 송수신을 위한 HTTP 프로토콜 사용, 데이터를 표시하기 위해 HTML 형식을 사용

 

HTML(Hyper Text Markup Language)

- 웹 상의 정보를 구조적으로 표현하기 위한 언어

- 제목, 단란, 링크 등 요소 표시를 위해 Tag를 사용

- 모든 요소들은 꺽쇠 괄호(<>) 안에 둘러 쌓여 있음

- 모든 HTML은 트리 모양의 포함관계를 가짐

- 일반적으로 웹 페이지의 HTML 소스파일은 컴퓨터가 다운로드 받은 후 웹 브라이저가 해석/표시

 

- HTML도 일종의 프로그램, 페이지 생성 규칙이 있음

: 규칙을 분석하여 데이터의 추출이 가능 => 추출된 데이터를 바탕으로 하여 다양한 분석이 가능

 

XML(Extensible Markup Language)

- 데이터의 구조와 의미를 설명하는 TAG(MarkUp)를 사용하여 표시하는 언어

- TAG와 TAG사이에 값이 표시되고, 구조적인 정보를 표현할 수 있음

- HTML과 문법이 비슷, 대표적인 데이터 저장방식

- 정보의 구조에 대한 정보인 스키마와 DTD 등으로 정보에 대한 정보(메타정보)가 포함되며, 용도에 따라 다양한 형태로 변경가능

- XML은 컴퓨터(예: PC <-> 스마트폰)간에 정보를 주고받기 매우 유용한 저장 방식으로 쓰여왔음

 

 


JSON(JavaScript Object Notation)

- 원래 웹 언어인 JavaScript의 데이터 객체 표현 방식

- 간결성으로 기계, 인간이 모두 이해하기 편함

- 데이터 용량이 적고, Code로의 전환이 쉬움

- 이로 인해 XML의 대체제로 많이 활용되고 있음

- Dict Type과 동일(key : value 쌍으로 데이터 표시)

- 웹에서 제공하는 API는 대부분 정보 교환시 JSON 활용

 

예시)

# JSON 파일의 구조 확인 => 읽어온 후 (read는 loads) => Dict Type처럼 처리
import json
with open("json_example.json", "r", encoding="utf8") as f:
	contents = f.read()
    json_data = json.loads(contents)
    print(json_data["employees"])
    
# Dict Type으로 데이터 저장 => json모듈로 쓰기(write은 dump)
with open("data.json", "w") as f:
	json.dump(dict_data, f)

 

 

 

🙂 공감과 피드백 환영합니다.