즐겨찾기에 있는 친구들이 전달한 Python 학습 튜토리얼을 잊으셨나요? 원저자인 William Koehrsen은 응용 데이터 과학 연구자이자 울트라 마라톤 준우승자입니다. 이 기사는 Python 학습에 대한 입문 경험으로, 아직 조치를 취하지 않은 분들에게 도움이 될 수 있습니다.
제 첫 Python 프로그램을 회상하며
향수를 불러일으키기 위해 2년 전 제 첫 Python 프로그램을 공유하고 싶습니다. 저는 항공우주공학과 학생이었을 때 스프레드시트를 배우지 않으려고 처음 Python을 배웠고, 왜 Python을 선택했는지 몰랐습니다.
나의 Python 교육은 Al Sweigart의 책 "Automated the Boring Stuff with Python"에서 시작되었습니다. 이 책은 간단한 프로그램을 사용하여 유용한 작업을 완료하는 방법을 가르치는 훌륭한 프로그래밍 입문서입니다. 나는 새로운 강좌를 수강할 때 이를 활용할 기회를 찾고 Python의 새로운 문제를 해결하려고 노력합니다.
첫 과제를 하기 전에는 이 200달러짜리 책을 너무 갖고 싶었는데 임대료 20달러도 감당할 수가 없었어요. 아마존에 1주일 무료 체험 기회가 있다는 걸 보고 아마존을 통해 책을 일주일간 사용할 수 있는 권한을 얻어 숙제를 마쳤습니다. 필요할 때마다 새 계정을 만들 수는 있지만 너무 번거롭습니다. 저는 Python을 사용하여 프로그래밍을 수행하는 더 효율적인 방법을 알아냈습니다.
Automate the Boring Stuff의 많은 유용한 라이브러리 중 하나는 Python을 통해 키보드와 마우스를 제어할 수 있는 pyautogui입니다. 어떤 사람들은 망치가 있으면 모든 문제가 못처럼 보인다고 말합니다.
Python과 pyautogui를 사용하면 화살표 키를 누르고 스크린샷을 찍을 수 있어 "책 무제한 무료 보기 문제"가 해결됩니다.
책의 각 페이지를 자동으로 넘기고 스크린샷을 찍는 첫 번째 프로그램을 작성했습니다. 비록 10줄밖에 안됐지만 정말 뿌듯해요!
다음은 이 코드의 전체 내용입니다.
Import pyautogui
Import time
#책을 열 수 있도록 5초 동안 수면
sleep.leep (5)
#범위는 기반일 수 있습니다. 페이지 수(1000) 변경:
for i in range(1000):
#페이지 넘기기
pyautogui.keyDown('right')
pyautogui.keyUp('right')
#저장 스크린샷
pyautogui.screenshot ('images/page_%d.pdf' %i)
time.sleep (0.05)
프로그램 실행은 매우 간단합니다(누구나 시도해 볼 것을 권장합니다). 스크립트를 book_screenshot.py로 저장한 다음 같은 폴더에서 명령 프롬프트를 열고 다음을 입력했습니다.
python book_screenshot.py
그런 다음 5초 동안 책을 뒤집어 전체 화면에 표시했습니다. 프로그램이 나머지 작업을 수행하여 각 페이지를 살펴보고 PDF로 저장되는 스크린샷을 찍습니다. 그런 다음 모든 PDF 파일을 하나의 파일로 병합하고 (적법성이 의심스럽기는 하지만) 책의 사본을 가질 수 있습니다! 물론 저작권이 충분히 존중되지 않는 사본이지만, 책을 읽기 위해 취해야 할 방식이다.
이 예는 새로운 기술을 배우는 데 있어 두 가지 핵심 사항을 보여줍니다.
1. 새로운 기술을 배우는 가장 좋은 방법은 해결해야 할 문제를 찾는 것입니다!
2. 기술이 유용하기 전에 완전히 숙달할 필요는 없습니다.
단 몇 줄의 코드와 무료 온라인 책으로 실제로 사용하는 프로그램을 작성했습니다. 데이터 구조와 루프에 얽매이기 때문에 기본을 배우는 것은 지루할 수 있습니다. Python을 배우려는 첫 번째 시도는 몇 시간 내에 실패했습니다. 그러나 전략을 변경하고 실제 문제에 대한 솔루션을 개발하기 시작하자 결국 몇 가지 기본 원칙을 배우게 되었습니다.
프로그래밍과 데이터 과학의 세계에는 마스터해야 할 것이 많지만 모든 것을 한꺼번에 배울 필요는 없습니다. 해결해야 할 문제를 선택하고 시작하세요!