AboutPython
[파이썬] writelines()
scone
2022. 5. 10. 03:06
[writelines()]
- 반복 가능한 자료형의 데이터를 파일에 쓸 수 있다.
- 리스트 또는 튜플 데이터를 파일에 쓰기 위한 함수이다.
- f.write()를 쓰면
from url import *
import random
with open(url()+'writlines실습.txt','a') as f:
randN = random.sample(range(1,46),7)
f.write('\n')
for i in randN:
f.write(f'{i} ')
with open(url()+'writlines실습.txt','r') as f:
print(f.read())
'''
38 40 35 25 22 43 7
22 44 41 20 33 2 15
'''
다음과 같이 리스트의 요소를 f.write()로 쓰려면 반복문을 돌려 요소 하나하나를 가져다가 적어야한다.
- f.writelines() 를 쓰면
with open(url()+'writlines실습.txt','a') as f:
randN = random.sample(range(1,46),7)
f.writelines(f'{randN}\n')
with open(url()+'writlines실습.txt','r') as f:
print(f.read())
for문 돌릴 필요 없이 그냥 리스트를 str 형태로 안에 넣어주기만 하면 된다.
[실습1] writelines()를 쓰되, 요소 사이에 개행을 넣어서 써주자.
with open(url()+'writlines실습.txt','w') as f:
randN = random.sample(range(1,46),7)
f.writelines(str(item)+'\n' for item in randN)
with open(url()+'writlines실습.txt','r') as f:
print(f.read())
'''
13
45
30
1
2
6
3
'''
comprehension을 다음과 같이 활용하여 요소 사이에 필요한 것들을 넣어줄 수 있다.
[실습2] 딕셔너리에 저장된 과목별 점수를 파일에 저장하는 코드를 작성하자.
from url import *
scoreDic = {'kor':85, 'eng':90, 'mat':92, 'sci':79, 'his':82}
with open(url()+'과목별점수.txt','w') as f :
f.writelines(key+'\t: '+ str(scoreDic[key])+'\n' for key in scoreDic.keys())
키 값들을 뽑아낸 후 키값과 value 값을 같이 다음과 같이 뽑아내주었다.
[실습3] print함수를 이용해 리스트 또는 튜플, 딕셔너리 등을 있는 그대로 텍스트에 써줄 수 있다.
from url import *
scoreDic = {'kor':85, 'eng':90, 'mat':92, 'sci':79, 'his':82}
with open(url()+'과목별점수.txt','w') as f :
print(scoreDic, file=f)