반응형
open(): 파일을 특정한 모드로 여는 함수입니다. 읽을때는 r. 쓸때는 w
read(): 파일 객체로부터 모든 내용을 읽는 함수입니다.
f = open("input.txt", "r", encoding="UTF-8")
f.seek(9) #9바이트의 위치 부터 읽는다. 한글자당 3바이트임.
data = f.read()
print(data)
f.close()
#결과값 : input.txt 파일의 값이 출력된다.
txt파일:
안녕하세요
홍길동입니다.
세번째 줄에는 무슨 말을 쓸까요?
readline(): 파일 객체로부터 한 줄씩 문자열을 읽는 함수입니다.
f = open("input.txt", "r", encoding="UTF-8")
count = 0
while count < 3:
data = f.readline()
count = count +1
print("%d번째 줄: %s" %(count,data), end='')
f.close
#결과값
1번째 줄: 안녕하세요
2번째 줄: 홍길동입니다.
3번째 줄: 세번째 줄에는 무슨 말을 쓸까요?
readlines():전체 내용을 한번에 리스트 담는 함수입니다.
f = open("input.txt", "r", encoding="UTF-8")
list = f.readlines()
print(list)
#결과값 : ['안녕하세요\n', '홍길동입니다.\n', '세번째 줄에는 무슨 말을 쓸까요?']
f = open("input.txt", "r", encoding="UTF-8")
list = f.readlines()
for i,data in enumerate(list):
print("%d번째 줄: %s" %(i + 1,data), end='')
f.close
#결과값
1번째 줄: 안녕하세요
2번째 줄: 홍길동입니다.
3번째 줄: 세번째 줄에는 무슨 말을 쓸까요?
with 사용
:파일을 읽고 close까지 사용하는데, 이부분이 번거로우며,,
자동열고 자동 닫게 해주며, 메모리할당 해제까지 지원해주는 문법
with open("input.txt", "r", encoding="UTF-8") as f:
list = f.readlines()
for i,data in enumerate(list):
print("%d번째 줄: %s" %(i + 1,data), end='')
파일의 단어 빈도수 찾기.
분석해보자..
def prosess(filename):
with open(filename, "r") as f:
#키: 알파벳, 값: 빈도수
dict = {}
data = f.read()
for i in data:
if i in dict:
dict[i] += 1
else:
dict[i] = 1
return dict
dict = prosess("input.txt")
print(dict)
#결과값:
{'a': 5, 'w': 8, 'd': 1, 'g': 1, ' ': 1, 'k': 6, 'r': 3, 'i': 4, 'n': 4, 'j': 4, '\n': 2, 'p': 1, 'q': 3, 'l': 2, 'm': 3, 's': 2}
# 빈도수를 기준으로 내림차순 정렬을 수행합니다/.
dict = sorted(dict.items(), key=lambda a:a[1], reverse=True)
print(dict)
#결과값:
[('w', 8), ('k', 6), ('a', 5), ('i', 4), ('n', 4), ('j', 4), ('r', 3), ('q', 3), ('m', 3), ('\n', 2), ('l', 2), ('s', 2), ('d', 1), ('g', 1), (' ', 1), ('p', 1)]
for data, count in dict:
if data == '\n' or data == ' ':
continue
print("%d번 출현: [%c]" %(count, data))
print(dict)
#결과값:
8번 출현: [w]
6번 출현: [k]
5번 출현: [a]
4번 출현: [i]
4번 출현: [n]
4번 출현: [j]
3번 출현: [r]
3번 출현: [q]
3번 출현: [m]
2번 출현: [l]
2번 출현: [s]
1번 출현: [d]
1번 출현: [g]
1번 출현: [p]
'Python > 공부' 카테고리의 다른 글
[정처산기] 테스트 파트 문제 모음 (1) | 2024.04.24 |
---|---|
[PYTHON] 12. 예외처리,람다식 (0) | 2022.07.25 |
[PYTHON] 11. 문자열 자료형 기본함수 ,리스트 기본함수 (1) | 2022.07.25 |
[PYTHON] 10. 사전(Dictionary) (1) | 2022.07.25 |
[PYTHON] 9. 클래스(class), 상속 (0) | 2022.07.25 |