๋ณธ๋ฌธ์œผ๋กœ ๋ฐ”๋กœ๊ฐ€๊ธฐ

1. ํŒŒ์ผ ์ฝ๊ธฐ

open() ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ํŒŒ์ผ์„ ๋ถˆ๋Ÿฌ์™€ ๋ณ€์ˆ˜์— ์ €์žฅํ•œ๋‹ค.

read() ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด ํŒŒ์ผ์„ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ํ˜•ํƒœ๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค.

close() ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํŒŒ์ผ์„ ๋‹ซ์•„ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ ˆ์•ฝํ•œ๋‹ค.

# ํŒŒ์ผ ์—ด๊ธฐ/๋‹ซ๊ธฐ
file = open('data.txt')
content = file.read()
file.close()

 

with open() as file: ๊ตฌ๋ฌธ์„ ํ™œ์šฉํ•ด indent ๋ฒ”์œ„๊ฐ€ ๋๋‚˜๋ฉด ํŒŒ์ผ์ด ์ž๋™์ ์œผ๋กœ ๋‹ซํžˆ๊ฒŒ ํ•œ๋‹ค.

# ํŒŒ์ผ ์ž๋™์œผ๋กœ ๋‹ซ๊ธฐ

with open('data.txt') as file:
	content =file.read()

์ค„ ๋‹จ์œ„๋กœ ์ฝ๊ธฐ

with open('data.txt') as file:
  for line in file:
    print(line)

 

๋‘๋ฒˆ์งธ ์ธ์ž์— 'w' ์˜ต์…˜์„ ์ฃผ์–ด, ์“ฐ๊ธฐ ๋ชจ๋“œ๋กœ ํŒŒ์ผ์„ ์—ฐ๋‹ค.

with open('data.txt', 'w') as file:
	file.write('Hello')

 

 

2. JSON ํŒŒ์ผ ์ฝ๊ธฐ

import json

 

JSON ํŒŒ์ผ์„ ์ฝ๊ณ  ๋ฌธ์ž์—ด์„ ๋”•์…”๋„ˆ๋ฆฌ๋กœ ๋ณ€ํ™˜

json.loads(string): ๋”•์…”๋„ˆ๋ฆฌ ๋ฐ˜ํ™˜

def create_dict(filename):
    with open(filename) as file:
        json_string = file.read()
        return json.loads(json_string)


JSON ํŒŒ์ผ์„ ์ฝ๊ณ  ๋”•์…”๋„ˆ๋ฆฌ๋ฅผ JSON ํ˜•ํƒœ์˜ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜

json.dumps(dictionary):  string ๋ฐ˜ํ™˜

def create_json(dictionary, filename):
    with open(filename, 'w') as file:
        json_string = json.dumps(dictionary)
        file.write(json_string)

 

 

3. CSV ํŒŒ์ผ ์ฝ๊ธฐ (Comma Seperated Value)

์ฝค๋งˆ ๋ง๊ณ  ๋‹ค๋ฅธ ๊ตฌ๋ถ„ ๋ฌธ์ž๋„ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
๋ฐ์ดํ„ฐ๊ฐ€ ,๊ฐ€ ํฌํ•จ๋œ ๊ฒฝ์šฐ ""๋กœ ๊ฐ์‹ธ๋ฉด ๋œ๋‹ค.

CSV ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

1. csv.reader(file, delimiter=','): reader๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ตฌ๋ถ„์ž ์„ค์ • ํ›„ ๋ฐ›์•„์˜ค๊ธฐ

2. for row in reader: ํ•œ ์ค„์”ฉ ์ฝ๊ณ  ์ฒ˜๋ฆฌํ•˜๊ธฐ

# books.csv

Fundamentals,"Goswami, Jaideva",signal_processing,228,Wiley
Data Smart,"Foreman, John",data_science,235,Wiley
God,"Hawking, Stephen",mathematics,197,Penguin
SuperMan,"Dubner, Stephen",economics,179,HarperCollins
import csv

def book_info():
    with open(filename) as file:
        reader = csv.reader(file, delimiter=',')
        
        for row in reader:
            title=row[0]
            author=row[1]
            pages=row[3]
            print("{} ({}): {}p".format(title, author, pages))

filename = 'books.csv'
book_info(filename)

 

CSV์˜ ํŠน์ง•

1. json์— ๋น„๊ตํ•ด key๊ฐ’์„ ํ•„์š”๋กœํ•˜์ง€ ์•Š์•„, ๊ฐ™์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์šฉ๋Ÿ‰์„ ์ ๊ฒŒ ์†Œ๋ชจํ•จ

# movies.csv 
์•„์ด์–ธ๋งจ,Iron Man,2008 
๊ฒจ์šธ์™•๊ตญ,Frozen,2013 

# movies.json 
[{"ko": "์•„์ด์–ธ๋งจ", "en": "Iron Man", "year": 2008}, 
{"ko": "๊ฒจ์šธ์™•๊ตญ, "en": "Frozen", "year": 2013}]

2. ๊ตฌ์กฐ๊ฐ€ ์ทจ์•ฝํ•˜๋‹ค. 

๋ฐ์ดํ„ฐ์— delimiter๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉด ๋ฐ์ดํ„ฐ๊ฐ€ ์‰ฝ๊ฒŒ ์ž˜๋ชป ๋‚˜๋‰˜์–ด์ง„๋‹ค.

 

๋ฐ˜์‘ํ˜•