파이썬 공부하다가 기억하고 싶은 내용 필기입니다
pyautogui
- 마우스, 키보드 이동 및 자동조절을 위한 모듈, 매크로 제작에 사용 가능
__name__ == "__main__": 의 의미
if __name__ == "__main__":
print("해당 파일에서 시작")
__name__을 파일별로 출력해보면 이해하기 쉽다.
해당 파일이 다른 파일에서 import 등의 방법으로 출력되면 __name__이 파일 이름으로 출력되지만 해당 파일 자체를 실행시키면 __name__ 출력시에 __main__으로 나온다.
실행이 어디서 되는지가 포인트
패키지
- 관련 있는 모듈을 하나의 폴더로 구성한것
패키지 제작시에 from 패키지이름 import * 방식을 사용하기 위해서는
모듈이 속해있는 해당 폴더에 __init__.py 파일이 존재해야하고
from . import 파일이름1, 파일이름2, 파일이름3
이런식으로 모듈들을 묶어놓는 설정이 필요하다.
파일 입출력
• 파일 읽기 모드
w : 쓰기모드(write)
- 덮어쓰기
a : 추가모드(append)
- 이어쓰기
r : 읽기모드(read)
반드시 읽고 쓰고 닫는 과정을 거쳐야한다.
• 파일 입출력 형식
# 기본 형식
file = open("data.txt", "w")
# 저장위치, 인코딩 방식 설정
file = open("./venv/data.txt", "w", encoding="utf8")
file.write("텍스트 파일 쓰기")
file.close()
파일을 열때는 open 함수를 사용해서 파일이름, 파일 열기 모드, 인코딩 방식을 지정한다.
파일이름으로만 지정하면 가상환경에서는 가상환경 제일 상위 폴더에 저장된다. (가상환경 아니어도 마찬가지일듯)
파일이름과 함께 저장위치도 지정할 수 있다.
파일 열기 모드는 위에 써놓은 쓰기모드, 추가모드, 읽기모드 중에서 사용할 방식을 지정하면 된다.
인코딩 방식은 필수로 지정해야되는건 아니고 텍스트 파일이 깨지는것을 방지하기 위해서 지정한다고 한다.
텍스트 파일을 열면 정상적으로 열리지만 vs code에서는 파일이 깨질때 인코딩방식을 utf8로 지정하면 대부분 해결된다.
하지만 지정하지 않아도 파일이 깨지지 않는 경우는 굳이 안써도 될듯하다.
• 파일 전체 읽기
# 파일 전체 읽기
file = open("./venv/data.txt", "r", encoding="utf8")
data = file.read()
print(data)
file.close()
• 파일 한줄씩 읽기
# 파일 한 줄씩 읽기
file = open("./venv/data.txt", "r", encoding="utf8")
while True:
data = file.readline()
print(data, end="")
if data == "":
break
file.close()
변수 data로 한줄씩 내용을 읽어서 출력
더이상 읽을 내용이 없다면 if문을 통해 반복문을 탈출
'코딩 > 파이썬 python' 카테고리의 다른 글
파이썬 상속, 오버라이딩, 클래스변수 (0) | 2021.07.13 |
---|---|
파이썬 자료형, 변수, 연산, 연산자, 입력, 자료형변환 (0) | 2021.07.03 |