입출력
- 사용자가 입력한 값을 변수에 넣는 방법.
input () 함수를 사용하여 원하는 값 대입.
기본 구조
input ("넣고 싶은 데이터")
input() 으로 변수에 데이터 입력, print 를 사용하여 질문 생성.
>>> A = input("number : ")
number : 100
>>> print (A)
100
파일 읽고 쓰기
- open/ close
- readline
- readlines
- read
- with
- 파이썬에서는 파일 생성과 읽고 쓰기를 할 수 있는 함수를 내장하고 있습니다.
open() / close()
### 파일 생성/ 열기 ###
f = open ("file_path",'options')
### 열려있는 파일 닫기 ###
f.close()
open () 옵션
open() _ option | 설명 |
r | 읽기모드 - 파일안의 내용을 읽을 때 사용 |
w | 쓰기모드 - 파일안에 내용을 쓸 때 사용 |
a | 추가모드 - 파일 마지막 부분에 새로운 내용을 추가할 때 사용. |
open을 이용하여 파일 생성/ 열기가 가능하며, close를 이용하여 파일을 닫아줄 수 있습니다.
( 파일 생성시에는 open 함수와 함께 'w' 옵션을 같이 사용. )
※ open 'w' 옵션을 사용할 때 기존 파일에 내용이 있으면 초기화되니 조심.
기존 파일에 내용을 추가하고자 할때는 반드시 'a' 옵션 사용.
ex)
#####################
### open / close ###
#####################
### 파일 생성, 닫기 ###
>>> f = open ("/root/newfile.txt",'w')
>>> f.close()
### 지정해준 경로에 파일 생성 ###
[root@myoracleworld ~]# ls
newfile.txt
'w' 옵션 사용
#############################################
### 'w' 옵션을 사용하여 파일에 내용 등록 ###
#############################################
>>> f = open ("/root/newfile.txt",'w')
>>> for a in range(1,11):
... data = "count = %d\n" % a
... f.write(data)
>>> f.close()
### 파일 내용 출력 ###
[root@myoracleworld ~]# cat newfile.txt
count = 1
count = 2
count = 3
count = 4
count = 5
count = 6
count = 7
count = 8
count = 9
count = 10
'a' 옵션 사용
##########################################
### 'a' 사용하여 기존파일에 내용 추가 ###
##########################################
### 기존 /root/newfile.txt 파일 마지막에 내용 추가 ###
>>> f = open ("/root/newfile.txt",'a')
>>> for i in range (11,16) :
... data = "plus count = %d\n" % i
... f.write(data)
>>> f.close()
### /root/newfile.txt 내용 확인 ###
[root@myoracleworld ~]# cat newfile.txt
count = 1
count = 2
count = 3
count = 4
count = 5
count = 6
count = 7
count = 8
count = 9
count = 10
plus count = 11
plus count = 12
plus count = 13
plus count = 14
plus count = 15
readline ()
- 외부 파일의 내용에서 첫 번째 줄을 읽어들여 출력하는 함수.
####################
### readline () ###
####################
>>> f = open ("/root/newfile.txt",'r')
>>> line = f.readline()
>>> print (line)
count = 1
>>> f.close()
readlines ()
- readline () 함수와는 다르게 외부 파일의 내용을 모두 읽어들여, 각각의 줄을 객체로 갖는
리스트로 반환해 줍니다.
##################
### readlines ###
##################
>>> f = open ("/root/newfile.txt",'r')
>>> line = f.readlines()
>>> print (lines)
['count = 1\n', 'count = 2\n', 'count = 3\n', 'count = 4\n', 'count = 5\n', 'count = 6\n', 'count = 7\n', 'count = 8\n', 'count = 9\n', 'count = 10\n']
for문과 strip 함수를 사용하여 출력
>>> f = open("/root/newfile.txt",'r')
>>> lines = f.readlines()
>>> for i in lines :
... i = i.strip()
... print (i)
...
count = 1
count = 2
count = 3
count = 4
count = 5
count = 6
count = 7
count = 8
count = 9
count = 10
read ()
- 파일의 전체 내용을 읽어들여 문자열로 반환하여 줍니다.
##################
### read 함수 ###
##################
>>> f = open("/root/newfile.txt",'r')
>>> data = f.read()
>>> data
'count = 1\ncount = 2\ncount = 3\ncount = 4\ncount = 5\ncount = 6\ncount = 7\ncount = 8\ncount = 9\ncount = 10\n'
with
- 파일안의 내용을 읽고 쓰거나 하려면 파일을 열고 닫는 명령어 ( open() / close() )를 써줘야 합니다.
with 문은 이렇게 수동으로 열고 닫는 문제를 자동으로 해결해주는 모듈입니다.
with open ("newfile.txt", 'w') as f:
f.write("Hello python")
'Coding > Python' 카테고리의 다른 글
[python] class (0) | 2021.12.29 |
---|---|
[python] random 모듈 (0) | 2021.12.09 |
[python] 함수 란? (0) | 2021.12.01 |
[python] for 문 / ( range, enumerate, zip 함수 ) (0) | 2021.12.01 |
[python] while 문 ( break, continue ) (0) | 2021.11.26 |