파이썬 5일차 - 1
Programing/Python 2012. 5. 14. 12:24 |
def input_int():
return int( input("숫자 입력하세요") )
a = input_int()
b = input_int()
jaeho(a,b)
input()
이 함수를 사용하면 입력 받을 수 있는 창이 뜬다.
대신 모든 입력 받은건 문자형으로 받는다.
그래서 형변환이 필수!!!!!
3) 파일 읽고 쓰기
f = open("jaeho.txt",'w')
data=""
for i in range(1,11):
data = data + "%d 번 째 줄입니다\n" % i
f.write(data)
f.close()
파일열기모드
설명
r
읽기모드 - 파일을 읽기만 할 때 사용
w
쓰기모드 - 파일에 쓸 때 사용
a
추가모드 - 파일의 마지막에 새로운 내용을 추가 시킬 때 사용
readline () |
한줄 씩 읽기 |
readlines() |
모든 라인 다 읽기 |
read() |
파일을 전부 읽은 문자열을 돌려준다. |
tell() |
현재까지 읽은 위치(포인터)를 가르켜 준다. |
seek() |
읽을 위치 (포인터)를 다시 지정 해준다. |
tell 과 seek
>>> f = open("test.txt", 'w')
>>> f.write("this is one line\n")
>>> f.write("two line\n")
>>> f.write("three line\n")
>>> f.close()
우선 test.txt라는 파일을 쓰기 모드로 열어서 파일 객체를 생성한후
write함수를 이용하여 총 세 개의 줄을 test.txt파일에 입력하고 파일 객체를 닫는다.
test.txt파일은 다음과 같을 것이다.
this is one line
two line
three line
다음의 예를 계속해서 따라해 보자.
>>> f = open("test.txt", 'r')
>>> f.tell()
0
처음에 파일을 읽기 모드로 열었고, 그 파일 포인터 값을 알기 위해서 tell을 호출하였다.
물론 파일의 맨 처음이기 때문에 0을 반환했다.
>>> f.readline()
'this is one line\n'
>>> f.tell()
17
다음에 한 줄을 읽는다. 그 다음의 파일 포인터는 그 줄의 바이트 수만큼 포인터가 증가한다.
따라서 다시 tell을 호출했을 때 17이 된 것이다.
>>> f.readline()
'two line\n'
>>> f.tell()
26
마찬가지로 다시 한 줄을 읽었더니 파일 포인터의 위치는 26이 되었다.
>>> f.seek(0)
>>> f.readline()
'this is one line\n'
>>>
파일 포인터의 값을 변화시키기 위해서 seek를 사용하였다.
f.seek(0)는 파일 포인터의 위치를 0으로 하라는 것이다.
따라서 다음에 다시 한 줄을 읽었을 때는 그 파일의 맨 처음 줄을 읽게 되는 것이다.
readline()
f = open("새파일.txt", 'r')
while 1:
line = f.readline()
if not line: break
print line
f.close()
readlines()
f = open("새파일.txt", 'r')
lines = f.readlines()
for line in lines:
print line
f.close()
read()
f = open("새파일.txt", 'r')
data = f.read()
print data
f.close()
'Programing > Python' 카테고리의 다른 글
모듈 (1) | 2012.05.17 |
---|---|
파이썬 5일차 - 2 (0) | 2012.05.14 |
파이썬 4일차 (0) | 2012.05.11 |
파이썬 3일차 (0) | 2012.05.09 |
파이썬 2일차 - 1 (0) | 2012.05.09 |