파이썬
[ Python ] 파이썬 파일 입출력/ with ~ as 문/ 한 줄씩 읽기
mminky
2021. 3. 10. 14:21
728x90
[ 파일에 쓰기 ]
f=open('hello.txt','w') #write모드
f.write('Hello Python')
f.close()
파이썬 파일이 있는 위치에 hello.txt가 생성됩니다.
직접 클릭해서 열어보면 다음과 같이 적혀있는 것을 확인할 수 있습니다.
[ with ~ as 문으로 파일에 쓰기 ]
위의 방법으로 하기 위해서는 f.close()가 필수 입니다.
하지만 귀찮기도 하고 까먹을 수도 있으니
f.close()를 하지 않아도 되는 with~ as 문을 알아보겠습니다.
with open('hello.txt','w') as f: 는
f=open('hello.txt','w')
f.close() 를 동시에 하는 코드라고 생각하면 쉽습니다.
with open('hello.txt','w') as f:
f.write('hello Python!!')
결과도 똑같이 파일에 입력됩니다!
* 단, write 안에는 string만 가능합니다!
그래서 str()을 이용해서 type을 변경한 후 f.write를 해주세요!
[ 예제 ]
파일에 출력(Write) 하는 파이썬 코드 입니다.
file.out이라는 파일에 w(rite)모드로 answer을 string(문자열)로 쓰는 코드 입니다.
answer='hello world'
with open('file.out', 'w') as f:
f.write(str(answer))
이런 식으로 file.out 이라는 파일이 생성됩니다.
확장자를 .txt로 변경하여 내용을 확인해봅니다.
[ 파일에서 한 줄씩 읽기 ]
전체를 읽기 위해서는 f.read()를 이용합니다.
하지만 한 줄씩 읽기 위해서는 f.readline()을 이용합니다.
f=open('numbers.txt','r')
s=f.readline()
print(s)
s=f.readline()
print(s,end='')
s=f.readline()
print(s,end='')
f.close()
* 결과
print(s,end='')에서 end=''을 하는 이유는 두 줄 사이에 띄워쓰기를 하지 않기 위함인 것 같습니다.
(따라서 BBB와 CCC는 바로 다음줄에 출력됩니다.)
반응형