Backend/Python

파이썬 - File Write & read

meong_j 2021. 9. 17. 13:55
728x90
반응형

 

파일 읽기 및 쓰기
- 읽기 모드 : r, 쓰기모드 w, 추가 모드 a, 텍스트 모드 t, 바이너리 모드 b
- 상대 경로('../, ./'), 절대 경로('C:\Django\etc..')

 

 

 

1. 파일 읽기(read)

# 파일 읽기(read)
# 예제1

f = open('./resource/it_news.txt', 'r', encoding='UTF-8')

# 속성 확인
print(dir(f))
#인코딩 확인
print(f.encoding)
#파일 이름
print(f.name)
#모드 확인
print(f.mode)
cts = f.read()
print(cts)
#반드시 close
f.close()

print()

 

 

1-2. with 문 사용하여 파일 읽기

# 예제2- with문 사용(많이 사용하는 방법)
with  open('./resource/it_news.txt', 'r', encoding='UTF-8') as f:
    c = f.read()
    print(c)
    print(iter(c))
    print(list(c))

print()

# 예제3
# read() : 전체읽기, read(10) : 10Byte

with  open('./resource/it_news.txt', 'r', encoding='UTF-8') as f:
    c = f.read(20)
    print(c)
    c = f.read(20) #커서가 마지막에 읽었던 지점부터 20byte읽음
    print(c)
    f.seek(0,0) #다시 원점으로 돌어가기
    c = f.read(20)
    print(c)

print()
# 예제4
# readline : 한줄씩 읽기

with open('./resource/it_news.txt', 'r', encoding='UTF-8') as f:
    line = f.readline()
    print(line)

print()

# 예제5
# readlines : 전체를 읽은 후 라인 단위 리스트로 저장
# 많이 쓰는 형태

with open('./resource/it_news.txt', 'r', encoding='UTF-8') as f:
    cts = f.readlines()
    print(cts)
    print()
    for c in cts:
        print(c, end='')

 

 

2. 파일 쓰기(Write)

#파일 쓰기(write)

#예제 1
with open('./resource/contents1.txt', 'w') as f:
    f.write('I love python\n')

# 예제2 - append 추가
with open('./resource/contents1.txt', 'a') as f:
    f.write('I love python\n')

# 예제3
# writelines: 리스트 -> 파일
with open('./resource/contents2.txt', 'w') as f:
    list = ['Orange\n','Apple\n','Banana\n','Melon\n']
    f.writelines(list)


# 예제4 - 파일로 출력
# 자주 사용하진 않음
with open('./resource/contents3.txt', 'w') as f:
    print('Test Text Write!', file=f)
    print('Test Text Write!', file=f)
    print('Test Text Write!', file=f)

예제1,2 출력

 

예제3 출력

 

예제4 출력

반응형