파일 조작과 시스템

2777 단어 TILpythonSyntaxSyntax

파일 조작과 시스템

파일 조작과 시스템 - 파일 작성

코드 작성을 통해 파일을 생성해보자

test.text 파일 만들기

f = open('test.txt', 'w')
f.write('test')
f.close()

위 파일에 내용 test 들어감

append로 문자열 추가하기

f = open('test.txt', 'a')
f.write('test')
f.close()

test.txt/
testtest

print()도 사용가능하다

f = open('test.txt', 'w')
f.write('Test\n')
print('I am print', file=f)
f.close()

test.txt/
Test
I am print


파일 조작과 시스템 - 2, with구문

with구문으로 파일열기
파일 닫기를 누락을 예방하기 위해서 with 구문을 사용한다.

with open('test.txt', 'w') as f:
    f.write('test')

파일 조작과 시스템 - 3, 파일 읽어오기

with open('test.txt', 'r') as f:
     print(f.read())
>aaa
bbb
ccc
ddd
     

한 줄씩 불러오기 readline()

with open('test.txt', 'r') as f:
    line = f.readline()
print(line) 
> aaa

readline에서 반환할 값이 없으면 None출력됨

with open('test.txt', 'r') as f:
    while True:
        line = f.readline()
        print(line)
        if not line:
            break #readline에서 반환할 값이 없으면 None출력됨            
>aaa

bbb

ccc

ddd

chunk를 사용하면 2개씩 출력한다.

with open('test.txt', 'r') as f:
    while True:
        chunk = 2
        line = f.readline(chunk)
        print(line) 
        if not line: #readline에서 반환할 값이 없으면 None출력됨
            break
> aa
a

bb
b

cc
c

dd
d

파일 조작과 시스템 - 4, 파일 쓰고, 읽기

파일을 쓰고 읽기를 나누면 번거롭게 때문에

with open('test.txt', 'w') as f:
    f.write(s)

with open('test.txt', 'r') as f:
    print(f.read())

w+, r+로 한번에 해결가능하다
w+

with open('test.txt', 'w+') as f:
    f.write(s)
    f.seek(0)   # seek를 통해 문자 제일 앞으로 가야함.
    print(f.read())

w+ 의 경우, 읽기 먼저할 경우 파일 내용이 없어지고 공백 파일이됨.
즉 제일먼저 써줘야 에러가 안남.

r+

with open('test.txt', 'r+') as f:
    print(f.read())
    f.seek(0)
    f.write(s)

r+는 제일먼저 읽어야 에러가 안남
하지만 사전에 파일이 없으면 에러

좋은 웹페이지 즐겨찾기