오늘 밤 마지막 파이썬 포스팅.
갑자기 이 노래가 생각나서 들었다. 형돈이와 대준이의 '안좋을 때 들으면 더 안좋은 노래'. 예전엔 그냥 웃기다고 좋아했는데, 지금 들으니 명곡이네. 철학적이고 삶의 무게도 느껴지고.
다만 뮤비 썸네일 보고 흠칫했다. 화질도 깨져서 이 시간에 보니 더 무서움. 이제 정말 자야지.
파일 생성하기
open(파일명, 파일 열기 모드)
* 파일 열기 모드는 w(쓰기모드 write), r(읽기모드 read), a(추가모드 append)의 3가지가 있음
# a.txt 파일 생성하기
f = open("a.txt", 'w')
f.close()
파일 쓰기
파일객체.write(내용) : 파일에 내용을 입력
* 이미 존재하는 파일을 쓰기모드로 열 경우 원래 있던 내용이 모두 사라짐
f = open('b.txt', 'a', encoding='utf8')
for i in range(1, 11):
line = "%d번 째 줄입니다.\n" % i
f.write(line)
f.close()
# encoding="" : 인코딩 종류
# %d : 문자변수로, 특정변수(위 경우 i변수)와 매칭이 됨
# \n : 줄바꿈 문자
<참고> 포맷 코드
%d : 십진법(decimal). 정수(Integer)
%f : 부동소수(float-point)
%o : 8진수
%x : 16진수(Hexadecimal)
16진수는 0 1 2 3 4 5 6 7 8 9 a b c d e f 16진수의 f는 십진수의 15
%% : % 문자기호 하나로 인식
%s : 문자열(string)
%c : 문자 1개(character)
파일 읽기
파일객체.read() : 파일 전체 내용을 하나의 문자열로 읽어옴
파일객체.readline() : 파일의 내용에서 한 줄만 읽어오는 함수
f = open("a.txt", 'r', encoding='utf8')
line = f.readline()
print(line)
f.close()
f = open("b.txt", 'r', encoding='utf8')
while True:
line = f.readline()
if not line:
break
print(line) # print(line, end='')
f.close()
파일객체.readlines() : 파일 내용을 모두 불러와서 리스트 형태로 저장
f = open("b.txt", 'r', encoding='utf8')
lines = f.readlines()
for line in lines:
print(line)
f.close()
#print함수는 기본적으로 end='\n'이 포함된 상태임. print(, end=' ')하면 줄바꿈이 없어지고 print(.strip)하면 공백이 전부 사라짐
<참고>
인코딩 encoding : 문자를 코드로 변환(컴퓨터는 문자를 인식할 수 없기 때문에 숫자와 문자를 매칭시켜서 문자를 인식함). utf8, euckr과 같이 파일 내용을 읽는 함수
- utf8 : 유니코드로, 전세계 문자를 표현 가능. 한글 1자가 3바이트.
- ecukr : 한글, 한국 통용 한자, 영문 표현 가능. 다양한 언어 표현 불가능. 한글 1자가 2바이트
디코딩 decoding : 코드를 문자로 변환
파일추가
f = open("a.txt", "a", encoding='utf8')
for i in range(11, 20):
line = "%d번 째 줄입니다.\n" % i
f.write(line)
f.close()
With 구문
with open(파일명, 파일 읽기 모드) as 파일객체 : : f=open 함수로 파일을 열면 항상 close해주는 것이 번거로움. with 구문과 함께 사용 시 해당 블록을 벗어나면 자동 close됨. 코드 3줄을 2줄로 줄일 수 있는 요약 기능.
with 구문 없는 경우 |
with 구문 쓰는 경우 |
|
with open('파일명', '파일열기모드' as f: |
csv
csv : Comma-Seperated Values의 약어로, 쉼표로 분류된 값이라는 뜻임. 의미 그대로 데이터가 쉼표(,)로 구분되어 있는 데이터(확장자는 csv). 엑셀로 쉽게 데이터를 열 수 있고, 텍스트 파일이라서 메모장으로도 쉽게 열 수 있음. 데이터 추출/분석/입력 시 많이 사용하는 형식.
<참고>
Kaggle : 데이터 분석&머신러닝 학습 플랫폼
'생산성 UP > 파이썬' 카테고리의 다른 글
문과생의 파이썬 공부_#4. if/elif/else 조건문과 for/while 반복문 (0) | 2020.08.11 |
---|---|
문과생의 파이썬 공부_#3. 문자열 STRING (0) | 2020.08.11 |
문과생의 파이썬 공부_#2. 파이썬 기본문법, 자료유형 (0) | 2020.08.10 |
문과생의 파이썬 공부_#1. 파이썬/파이참 설치 및 실행, 주요 단축키 (0) | 2020.08.07 |
댓글