with 구문
파이썬에서는 확장자가 .py가 아닌 다른 파일도 읽어보거나 수정할 수 있습니다. (ex. .txt, .docx 파일) 이것을 가능하게 해주는 구문이 with 구문입니다.
먼저 위와 같이 .txt 파일 하나와 .py 파일 하나를 생성했습니다.
그 후, example.txt 파일 안에 아래와 같이 글자를 적고 저장했습니다.
이제 파이썬에서 example.txt의 내용을 읽어보도록 하겠습니다.
read, readline, readlines 함수
with open("example.txt") as greeting:
a = greeting.read()
print(a)
여기서 open 함수는 example.txt 파일을 연다는 뜻이며, as 구문은 example.txt 파일의 해당 파이썬 파일에서 쓸 변수 이름을 정해주는 역할을 합니다. 여기서는 as greeting이라 했으므로, example.txt는 greeting이라는 변수 이름을 얻었습니다.
마지막으로 read 함수는 example.txt의 내용을 출력해주는 역할을 합니다.
with open("example.txt") as greeting:
a = greeting.readline()
b = greeting.readline()
c = greeting.readline()
print(a)
print(b)
print(c)
readline 함수는 example.txt의 내용을 한줄씩 출력해주는 함수 입니다.
따라서 위의 코드에서 각각 변수 a는 Hello, 변수 b는 Hi, 변수 c는 Nice to meet you를 의미하게 됩니다.
with open("example.txt") as greeting:
a = greeting.readlines()
print(a)
readlines 함수는 example.txt의 내용 한줄 한줄을 리스트 안에 넣어주는 함수입니다.
with 구문의 3가지 모드 (read, write, append)
with 구문에는 3가지 모드가 있습니다. 읽기(read), 쓰기(write), 추가하기(append) 모드가 바로 그것입니다. 3가지 모드의 특성은 아래와 같습니다.
mode ="r"(read) |
읽기만 가능 |
mode="w" (wirte) |
쓰기만 가능 (*기존 내용에 덮어쓰기만 가능) |
mode="a" (append) |
쓰기만 가능 (*기존 내용에 추가하여 작성하기만 가능) |
그럼 write모드를 이용하여 example.txt의 내용을 수정해보겠습니다.
with open("example.txt", mode="w") as greeting:
a = greeting.write("xin chao")
example.txt의 기존 내용은 모두 사라지고 xin chao라는 글자로 바뀐 것을 확인할 수 있습니다.
(*xin chao는 베트남어로 안녕하세요 라는 뜻입니다.)
'IT공부 > 파이썬 (Python)' 카테고리의 다른 글
파이썬 공부 12 - dictionary에 for 반복문과 if 구문 넣기 (0) | 2020.12.19 |
---|---|
파이썬 공부 11 - list에 for 반복문과 if 구문 넣기 (0) | 2020.12.19 |
파이썬 공부 9 - 상속 : super class(부모 클래스)와 sub class(자식 클래스) (0) | 2020.12.11 |
파이썬 공부 8 - turtle 모듈과 tracer, update 함수 (0) | 2020.12.10 |
파이썬 공부 7 - turtle 모듈과 onkey 함수 (1) | 2020.12.09 |