프로그래밍

파이썬 파일 입출력 (텍스트 파일)

Python
반응형

 파일 열기

f = open ("text.txt","w")
f.close()

-> text라는 이름을 가진 파일이 파이썬 파일과 같은 곳에 생성됨

.close는 필수

 

open 사용시 close필수, 하지만 with 사용시 자동으로 close가 실행된다.

with open("파일이름.txt",'w') as 변수명:
	변수.write ("내용") # 자동으로 close

 

>>파일에 한글 입력을 위해서는 모드 다음에 ,encoding='utf-8'를 입력해 주어야 한다.

 

readline()/readlines()

: 파일 불러 읽어오기

f = open('practice.txt','r', encoding='utf-8')
i=0
while True:
	line = f.readline()
	if not line:
		break
	print(line.replace("\n",""))
	i=i+1
f.close()

 

변수명 .split() / len()

f = open('practice.txt','r', encoding='utf-8')
contents = f.read()
word_list = contents.split(" ")
line_list = contents.split("\n")

print("총글자수:", len(contents))
print("총단어의수:",len(word_list))
print("총줄의수:",len(line_list))

 

 

ex)

 

오류의 내용을 지속적으로 텍스트파일에 저장하는 프로그램

nation = ["한국","미국","일본","중국","러시아","베트남"]
a ="a"
while a:
	if a == "q":
		break
	a = input("나라 이름을 입력하세요 : ")
	try:
		print(nation.index(a))
	except ValueError as e:
		f = open("ErrorLog.txt", "a")
		f.write("%s\n"%a)
		f.close()
		print("%s 국가는 리스트에 존재하지 않습니다. 로그기록"%e)

텍스트 파일의 숫자 합과 평균 구하기

f = open("score.txt", 'r')
score = f.readlines() #읽어들여 리스트로 바꾸기
score = list(map(int, score)) #전부 정수형으로 바꾸기
score_sum = 0

for i in score: #합계
	score_sum = score_sum + i
score_average = score_sum / len(score)

print("전체 합은 %d 입니다."%score_sum)
print("전체 평균은 %d 입니다."%score_average

 

반응형

'Python' 카테고리의 다른 글

파이썬 함수 활용  (0) 2019.11.24
파이썬 예외처리  (0) 2019.11.23
파이썬 리스트 , 튜플, 세트, 딕셔너리  (0) 2019.11.17
파이썬 for 실습  (0) 2019.11.10
파이썬 while 실습  (0) 2019.11.09