파일의 역할
컴퓨터에 의해 처리 될 또는 처리된 데이터와 정보가 임시적으로 저장된 상태
→ 일련의 연속된 바이트
→ 프로그램(파이썬 소스코드)에 읽혀 가공 처
파일의 구성
연속된 바이트 와 파일의 시작 , 파일 포인터, 파일의 끝(EoF)으로 표현
(파일의 시작)[ 바이트0 ][ 바이트1 ][ 바이트2 ][ 바이트3 ]…[ 바이트n-1 ][ 바이트n ] (파일의 끝EoF)
↑작업위치(포인터)
파일의 종류
데이터가 저장되는 방식에 따라 구분
→ 텍스트 파일
서로다른 문자로 인식하며, 별도의 인코딩 시스템을 사용해서 문자열 출력
→ 바이너리 파일
적은 데이터 용량으로 값들을 저장 한다.
대다수의 컨텐츠들은 바이너리 파일로 저장 되어 있다.
파일 함수
파일의 시작, 파일포인터, 파일의 끝을 활용하여 데이터 읽기,쓰기를 위한 함수 및 메소드를 내장
멤버 설명
멤버 | 설명 |
open():file obj | 파일과 연결되어 있는 파일 객체 생성 |
read() | 특정 개수의 문자를 반환 |
readline() | 한 라인의 문자열을 반환 |
readlines():list | 전체 라인의 문자열을 리스트로 반환 |
write(s:str): | 파일에 문자열을 작성 |
close() | 파일 닫기 및 파일 객체 삭제 |
파일 객체 생성
파일객체_참조변수 = open(파일이름, 모드)
→ 물리적인 파일과 연결된 파일 객체를 생성하고 참조변수에 할당
모드 | 설명 |
‘r’ | 읽기 용도 |
‘w’ | 새로운 파일을 쓰기 용도 |
‘a’ | 파일의 끝에 데이터를 덧붙이기 용도 |
파일이름
파일의 고유 식별자 역할 및 저장장치 내부에서 파일의 위치를 표현하는 파일 경로를 내포
(같은 경로에 있으면 경로 생략 가능)
파일읽기
특정 범위의 데이터를 파일에서 읽고 문자열로 반환
→ 파일 포인터의 이동을 동반
h_fp = open("Hamlet_by_Shakespkespeare.txt","r")
title = h_fp.read(6)
author = h_fp.readline()
h_fp.close()
close() 를 하지 않았을 경우 잘못된 연산이 이루어지거나 파일이 깨질 수 있으니까 꼭 해야한다.
파일쓰기
문자열을 파일 포인터가 위치한 지점에 기록
→ w 모드로 존재하는 파일 오픈 시 데이터 삭제
p_fp = open("python.txt" , "W")
p_fp = write("KNOU\\n")
p_fp = write("python programming\\n")
p_fp = close()
#결과
KNOU|npython programming|n
데이터추가
파일 끝에 데이터를 덧붙이는 작업
→ 파일 오픈 후 파일 포인터를 EoF로 이동
→ 존재하지 않는 파일은 write 와 동일
a_fp = open('python.txt', "a")
a_fp.write("\\nby CS\\n")
a_fp.close()
시퀀스의 개념
순서화된 값의 집합체를 저장할 수 있는 데이터 타입
→ 단일 식별자로 연속된 저장 공간 접근 수단 제공
→ 개별 원소의 값을 수정, 추가, 삭제 가능
→ 원소(element) 의 나열을 저장 할 수 있는 타입
- 리스트, 세트, 투플, 딕셔너리 등
딕셔너리의 이해
키와 값의 쌍(pir) 을 저장하는 시퀀스
딕셔너리_이름 = {key1:value1, key2:value2, key3:value3, ... keyn:valuen }
→ 세트, 리스트, 딕셔너리는 키가 될 수 없다
빈 딕셔너리
딕셔너리_이름 = {}
딕셔너리_이름 = dict{}
항목 추가
딕셔너리_이름[key] = value
항목 삭제
del 딕셔너리_이름[key]
딕셔너리 멤버
멤버 설명
멤버 | 설명 |
keys(): tuple | 포함된 모든 키를 반환 |
values(): tuple | 포함된 모든 값을 반환 |
items(): tuple | (key,value)의 형태의 투플로 모든 항목을 반환 |
clear(): None | 모든 항목을 삭제 |
get(key): value | 키에 해당하는 값을 반환 |
pop(key): value | 키에 해당하는 값을 반환하고 항목을 삭제 |
popitem(): tuple | 무작위로 한 (key,value) 를 반환하고 선택된 항목을 삭 |
딕셔너리 순회
순회(traversal) : 각각의 항목을 순서대로 한 번씩만 방문하는 과정
순회형식
for key in dictionary:
print(key + ":" + str(dictionary[key]))
key 사용 블록
'KNOU > 요약정리' 카테고리의 다른 글
[데이터 정보처리 입문] 통계 정보의 검색 및 활용 (0) | 2023.06.01 |
---|---|
[데이터 정보처리 입문] 데이터의 입력과 점검 (0) | 2023.06.01 |
[python] 모듈 (0) | 2023.05.16 |
[python] 객체지향 (0) | 2023.05.16 |
[python] 함수 (0) | 2023.05.16 |
댓글