파이썬 무료 강의 (활용편2) - GUI 프로그래밍 (4시간)
파이썬 무료 강의 (활용편2) - GUI 프로그래밍 (4시간)
수강정보
(24개의 수강평)
920명의 수강생
스킬태그 #Python, #GUI
무료
지식공유자 : 나도코딩
34회 수업 · 총 3시간 52분 수업
기간 : 평생 무제한 시청
수료증 : 미발급 강의
수강 난이도 : 초급

이 강의는

파이썬을 활용하여 GUI 프로그래밍을 배우고 여러 이미지를 합치는 유용한 프로그램을 함께 만듭니다.

이런 걸 배워요

  • 파이썬 기초 문법을 활용하며 실력 다지기
  • tkinter 라이브러리를 활용한 실전 프로그램 제작

파이썬(Python) 입문자 탈출,
GUI 프로그래밍으로 재미있게 실력을 다져보세요!

강의 소개 🎮

많은 분들이 파이썬 기초까지는 잘 배우지만,

1. 초보를 벗어나 중급자로 실력을 키우려면?
2. 파이썬을 가지고 뭘 할 수 있는지?

이 2가지로 어려움을 겪고 있는 줄로 압니다.

그래서 저는 이 분들을 위해서 다양하면서도 쓸모있는, 총 8개의 실전 프로젝트를 만들며 실력을 키울 수 있는 강의를 제작하기로 하였습니다.

그리고 그 두 번째 프로젝트가 바로 'GUI 프로그래밍'입니다.

대학시절, '나도코딩' 이 처음으로 배운 언어는 C 였습니다.
(아, 꼬꼬마 시절에 GW-BASIC 도 배워보긴 했지만, 논외로 하겠습니다 ㅋ)

C를 배우면서 느낀 점은 이랬습니다. ▼

1. 어렵다
2. 어렵다
3. 어렵다
4. 아 C.. 뭔 소리야
-- 포인터 수업 이후 --
5. 기억 없음

(격분)

교수님은 열심히 가르쳐 주셨죠. 정말 열심히요.

그러나 우리에게 답은 종강뿐...

그런데 한 가지 의문이 남았습니다.

"왜 글자만 나오지??
내가 쓰는 프로그램들은 모두 예쁜 그래픽이 있는데?"

압축 프로그램, 워드, 게임, 브라우저는 물론 
하다못해 메모장, 그림판, 지뢰찾기도 모두 예쁜 창 안에 버튼과 이미지 등등이 있었지요.

너무 궁금해서 조교님께도 여쭤봤지만 돌아오는 대답은
"공부하다 보면 알게 돼요. C 하나만 제대로 해도 먹고 살 수 있어요"

지금은 몰라도 돼...

네, 지금 돌아보니 조교님의 말씀은 틀리지는 않았어요.
하지만 그 때 당시 저는 너무 답답했고 그 이후로도 글자만 나오는 코딩만 하며 개발에 크게 흥미를 느끼지 못했습니다.

전공 과목 실습이나 과제가 다 이런 식이었어요.

C 로 피라미드 만들기라던지,

???

C 로 구구단 짜기... 모두 글자만 나왔죠.

????

어린 생각으로는, 코딩을 배운답시고 이런 것만 만들면, 
아무리 열심히 만들어도 차마 누구한테 써보라고 줄 수가 없겠더라구요...

제가 원한 모습은 바로 이런 거였죠.

최소 자바로 만든 메모장이나

메모장

뭔가 동작할 수 있어 보이는 이런 거요.

버튼을 누르면 바로바로 동작할 것처럼 생겼죠

네, 바로 GUI 라는 녀석을 덮어 씌운 프로그램입니다.
(GUI : Graphical User Interface)

이번 활용편 주제가 바로 이 'GUI 프로그래밍' 입니다.
파이썬 진영에는 다양한 GUI 라이브러리가 있어요.
(tkinter, PyQt, wxPython, PyGui, PySide, ...)

저는 그중에 가장 쉽고 빠르게 개발할 수 있는 tkinter 를 선정했습니다.
파이썬을 설치하면 자동으로 딸려오는 녀석이기도 하지요.

파이썬 GUI 프로그래밍 라이브러리, Tkinter

처음에는 tkinter 의 기초를 먼저 공부하면서 어떤 위젯(widget)들이 있는지, 어떻게 쓰는지 먼저 공부합니다.
딸깍 눌러볼 수 있는 버튼도 있구요,

버튼을 누르면 동작해요

그냥 글자나 이미지를 보여주기만 하는 레이블도 있습니다.

레이블

정말 자주 사용되는, 글자를 입력할 수 있는 엔트리와 텍스트 박스도 배우구요.

텍스트 박스에 글자를 입력!

여러 항목을 쉽게 관리할 수 있는 리스트 박스도 있어요 ^^

리스트 박스

이거 자주 보시죠? 체크버튼이지요 ㅋ

해당하는 항목에 체크를

여러 개 중에 하나를 선택할 수 있는 라디오 버튼도 있어요.

딱 하나만 택일

이 중요한 것들을 포함하여 몇 가지를 더 배우고 화면 상단 메뉴도 한 번 만들어 봅니다.

상단 메뉴

위젯을 어떻게 내가 원하는대로 배치하는지도 공부해봐야겠죠?
그러기 위해서 키보드의 숫자 키패드 부분을 만들어 봅니다. 
계산기 같기도 하네요 ㅎㅎ

계산기처럼 생긴 숫자 키패드

그리고 나서는, 기초를 배웠는데 퀴즈가 빠질 수 없죠!
복습 삼아서, 윈도우 메모장과 똑같은 프로그램 하나 만들어보구요.

(함께 만든 메모장)

(원본 메모장)

구분이 안 갈 만큼 비슷합니다

물론 여러분이 직접 만들게 되실 거에요 ^^

Cheers!

여기까지 하는데 영상 기준으로 딱 2시간이면 됩니다.
그 후에는... 제가 너무너무 좋아하는 프로젝트를 진행합니다.
코딩 공부의 꽃은 직접 어느 정도 규모 있는 프로그램을 만들어 보는 것이니까요. ^^

어떤 프로젝트냐면 바로..
인터넷에 보면 드라마나 영화나 TV 프로그램의 주요한 장면을 모아서 하나로 합친 이미지 있죠?
예를 들면 이런 것들이요 (사랑해요 무한도전..)

영상을 보면서 원하는 장면을 캡처하고, 캡처한 이미지를 하나씩 합치는 게 보통 일이 아닙니다.
그래서 이 작업을 엄청 편하게 하는 프로그램을 만들어 볼 거예요.

프로그램의 생김새와 사용법은 대략 이렇습니다.

1. 합칠 이미지를 고르고
2. 저장 경로를 선택하고
3. 시작을 누르면?

끝!!

..그럴듯 하지 않나요???  ^^;;

보너스로 키보드를 누르면 자동으로 스크린 캡처를 하여 파일로 저장해주는 유틸리티도 만들어 봅니다.
그래야 진짜로 영상을 보면서 이 프로그램을 사용할 수 있을테니까요 ^^

여기까지 하시고 나면 

  • GUI 프로그래밍은 어떻게 만드는지
  • 그동안 글자로만 연습하던 코드가 GUI 와 어떻게 어우러지는지
  • 버튼을 클릭하면 동작이 어떻게 연결되는지
  • 전체적인 구조는 어떻게 잡는지

등등을 모두 배우시게 됩니다.

파이썬으로 '나만의 멋진 프로그램'을 만들고 싶으신 분께 권해 드립니다. ^^

물론, 
나도코딩은 "무료"입니다 !

YouTube 채널 📺
나도코딩 채널을 구독하시면 코딩 관련 다양한 꿀팁 강좌를 누구보다 빠르게 수강하실 수 있습니다.

구독하러 가기 (클릭)

도움 되는 분들

  • 나도코딩 파이썬 기본편을 보신 분
  • 파이썬 초보에서 벗어나고 싶으신 분

공개 일자

2020년 7월 06일 (마지막 업데이트 일자 : 2020년 7월 06일)
4.9
24개의 수강평
default_profile.png
dltlghkd930217 1달 전
역시 믿고 듣는 나도코딩님의 강의입니다!
default_profile.png
zero250i 3달 전
정말 좋은 강의 잘 듣고 있습니다. C언어 Java 공부하다 Python 공부하니 너무 재밌네요. 감사합니다!! :)

교육과정

모두 펼치기 34 강의 3시간 52분
섹션 1. 기본기
15 강의 109 : 40
기본 프레임
04 : 40
버튼
08 : 41
레이블
04 : 49
텍스트 & 엔트리
06 : 11
리스트 박스
07 : 19
체크 버튼
04 : 55
라디오 버튼
07 : 10
콤보 박스
05 : 29
프로그레스 바
09 : 13
메뉴
09 : 19
메시지 박스
12 : 00
프레임
05 : 37
스크롤 바
04 : 55
그리드 기본
11 : 08
그리드 심화
08 : 14
섹션 2. 퀴즈 (메모장 만들기)
1 강의 15 : 18
섹션 3. 프로젝트 (여러 이미지 합치기 프로그램)
14 강의 103 : 08
프로젝트
04 : 24
레이아웃 전반전
08 : 50
레이아웃 후반전
11 : 32
레이아웃 연장전
03 : 59
파일 추가 & 선택 삭제
13 : 06
저장 경로
07 : 34
자동 스크린샷
04 : 25
이미지 합치기
11 : 36
프로그레스 바 연동
02 : 47
zip
05 : 29
옵션 전반전
11 : 30
옵션 후반전
05 : 48
버그 수정
04 : 45
(보너스) 스크린 샷 프로그램
07 : 23
섹션 4. 끝
1 강의 00 : 10
Outro
00 : 10
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스