파이썬 맛보기_기본개념
이주형
dlwngud37@gmail.com
당근
양파
우리 이제 프로그래밍을 해볼꺼에요
프로그래밍이란 무엇일까요?
남들이 생각하는
프로그래밍
실제VS.
프로그래밍이란?
● 프로그램을 만드는 작업
● 프로그램이란 작은 명령(code)들이 많이 모여 실행 가능한 파일이 된 것이다.
code
code
code
code
code code
code
code
code
code
프로그램 물론
진짜 이렇게생기지는 않았다.
카레를 만든다고 생각해봅시다.
무엇이 필요할까요?
음.. 재료로는
당근, 양파, 감자, 카레가루가 필요하고
칼이나 도마, 그릇같은 도구가 필요할
것 같아요!
프로그래밍을 요리에 비유해보자!
● 요리를 하려면 음식 재료와 손질할 도구, 담을 그릇이
필요하다.
● 프로그래밍 역시 프로그램을 완성하기 위해선 재료와 도구
그리고 재료들을 정리할 그릇이 필요하다!
그래서 우리는 이제 프로그래밍에 필요한
재료, 그릇, 도구를
배울 것 입니다!
레고레고~~
재료와 그릇을 배워봅시다!
데이터형 (Data type)
● 프로그래밍에는 다양한 데이터가 사용된다.
● 재료를 나눌 때 당근과 양파는 야채이고,
사과와 파인애플은 과일인 것처럼
데이터에도 서로 다른 종류의 데이터가 있다.
● 이런 데이터의 종류를 데이터 형(Data type)이라고 한다.
● 그 중에서도 파이썬 데이터 형의 가장 기본인
내장 데이터형(Built-in Types)에 대해 먼저 배워보자!
내장 데이터형은 파이썬에 처음부터 가지고 있는 데이터형을 뜻한다.
(import 문을 사용하여 외부로부터 불러들일 필요가 없는 데이터!)
참고 : https://docs.python.org/3/library/stdtypes.html
● 정의
The principal built-in Types are numeric, sequences, mappings,
classes, instances and exceptions.
내장 데이터형 (Built-in Types)
내장 데이터형 (Built-in Types)
● 종류
Numeric
String
List
Tuple
Dictionary
Set
● 종류
Numeric
String
List
Tuple
Dictionary
Set
재료 vs. 그릇
재료
● 종류
Numeric
String
List
Tuple
Dictionary
Set
그릇
재료 vs. 그릇
Sequence Data
● 종류
Numeric
String
List
Tuple
Dictionary
Set
● 순서가 있는 데이터
● 순서가 있다는건 ? 번호를 붙여 나열할 수 있다!
● 따라서 “4번째 데이터가 무엇이냐?”
혹은 “2번째부터 5번째 데이터를 뽑아 나열해라!”
같은 명령을 실행할 수 있다.
-> indexing & Slicing
중복 가능 vs. 불가능
● 종류
Numeric
String
List
Tuple
Dictionary
Set
● 데이터를 담는 그릇은 4가지
● 그 중 List와 Tuple은 담았던 재료를 또 담을 수
있지만 Dic과 Set는 그렇지 않다.
* Dic의 Key 값이 중복 불가능, value는 중복 가능
1. 숫자열 (Numeric)
● 숫자형태로 이루어진 데이터
● 정수, 소수, 복소수형으로 표현이 가능하다.
ex. 1, 0, 1.0, 1+3j
내장데이터형
2. 문자열 (String)
● 작은 따옴표(‘ ’) 혹은 큰 따옴표(“ ”)로 묶은 것이 문자열이다.
● 숫자도 따옴표로 묶으면 문자열로 인식한다.
ex. “20190421”, ‘오픈컬리지’
내장데이터형
3. 리스트 (List)
● 목록이라는 뜻으로 숫자나 문자열 등을 나열하여 저장하는
데이터형이다.
● 콤마 (,)로 구분하고 전체를 대괄호([])로 감싼다.
ex. [1,2,3,4] / [‘a’, ‘b’, ‘c’]
● 파이썬 시퀀스 중에서 가장 많이 사용된다.
내장데이터형
4. 튜플 (Tuple)
● 데이터를 담는 것은 List와 비슷하지만
수정이 불가능하다.
● 그렇기 때문에 바뀌면 안되는 값을 담을 때 튜플을 사용
● 또한 Tuple이 List 보다 연산이 빠르다.
● 콤마(,)로 구분하고 전체를 소괄호( () )로 감싼다.
ex. (‘월', ‘수', ‘금')
내장데이터형
5. 딕셔너리 (Dictionary)
● 사전형 데이터
● 키(key)와 값(value)을 쌍으로 저장하고 키를 사용해서 값을
호출한다.
● 키와 값을 콜론(:)으로 연결해 한 쌍으로 하고 콤마(,)로 구분
짓는다.
ex. country_code = {82 : ‘Korea’, 1 : ‘America’, 81 : ‘Japan’}
● 키는 절대 중복되지 않는다.
참고 : https://docs.python.org/3/library/stdtypes.html
내장데이터형
6. 세트(Set)세트_집합형 데이터
● 집합형 데이터
● 단순한 데이터 모음 (순서가 없다)
● 중복 불가
● 콤마(,)로 구분하고 중괄호({}) 로 감싼다.
ex. {‘형’, ‘주’, ‘이'}
참고 : https://docs.python.org/3/library/stdtypes.html
내장데이터형
와.. 너무 많이 배웠다.
중간 정리 한번 할까요?
지금까지 프로그래밍의 기본 재료에 대해 배웠어요.
바로 내장 데이터형!
내장 데이터형은 크게 재료와 그릇으로 나눌 수 있는데,
재료는
숫자(numeric)와 글자(string)
그릇은
재료들을 괄호로 담는 4가지!
List, Tuple, Dict, Set
데이터가 많아지면 어떻게 기억을 하죠?
이름을 붙여보자
당근
양
파
변수 할당
● 어떤 재료인지 기억하기 위해 그릇에 이름을 붙이는 것 처럼 데이터도
이렇게 이름을 붙여 줄 수 있다.
● 프로그래밍에서 데이터에 잠깐 붙여주는 이름을 변수라고 한다.
● “값을 할당한다” 라고 한다.
● 할당 연산자는 “=”
** “=” 는 같다라는 의미가 아니다. (코딩에서 같음은 “==”로 표시)
최근에 할당한 값이 변수에 들어가 있는 것이지 영원히 그 값이 아니니까!
변수명 작성법
● 변수의 이름은 자유롭게 붙일 수 있다.
● 띄어쓰기는 사용할 수 없어 언더바(_)로 대체한다.
● 알파벳 대소문자가 구별된다. (xyz =! XYZ)
● 변수의 첫글자로는 숫자를 사용할 수 없다.
● 파이썬 프로그램에 내장되어 있는
모듈, 라이브러리 이름은 사용할 수 없다. (if, and, or 등)
함수(Function)란 무엇인가?
당근과 양파를 믹서기에 넣고 갈면 무엇이 나올까요?
함수는 프로그래밍에서 믹서기와 비슷한 역할을 합니다.
입력값을 가지고 어떤 일을 수행한 다음에 그 결과물을 내어놓는 것,
이것이 바로 함수가 하는 일입니다.
여기서 입력값은 당근과 양파,
어떤일은 믹서기에 가는 것,
출력값은 아무도 먹지 않을 어떤 것이 되겠네요
입력값
(Input)
함수
(Function)
출력값
(Output)
함수는 왜 필요할까?
프로그래밍을 하다 보면 똑같은 내용을 반복해서 작성해야 할 때가 있는데요,
이때 바로 함수가 필요합니다!
반복되는 부분이 있을 경우
그 부분을 묶어 하나의 식으로 만드는
즉, “어떤 입력값을 주었을 때 어떤 결과값을 돌려준다.”의 식의 함수로
작성하는 것 입니다.
감자는 감자칼로 써는 게 편하고,
생선은 사시미를 사용하는게 편한 것 처럼
재료에 맞춰 이용되는 함수가 있습니다.
매서드 (Method)
● 특정 재료형을 위한 함수
● 데이터형 (string, numeric, list 등)에 따라 사용할 수
있는 함수들이 달라진다.
그렇다면 함수와 메소드 차이는 무엇일까?
● 둘 다 특정한 연산 처리를 도와준다는 것은 같다.
● 차이는 객체(object)에 속해있는지 여부이다.
● 메소드는 객체에 속해있는 함수라고 정의할 수 있고
그렇기 때문에 큰 의미에서 메소드는 함수에 속한다.
● 쉽게 이야기 하면 함수를 사용할 때 특정 객체가 필요하면 그것은 메소드가
된다.
마지막 총 정리
요리 = 프로그래밍
요리를 하려면 재료, 그릇, 도구가 필요!
프로그래밍의 재료, 그릇 & 도구 = Data type & 함수(<- 메서드)
재료에 이름 붙이기 = 변수 할당
재료를 사용하는 도구 = 함수
재료의 특성에 맞게 사용하는 도구 = 메서드
감사합니다!!

01 built in-data_type

  • 1.
  • 2.
  • 5.
  • 6.
  • 7.
    프로그래밍이란? ● 프로그램을 만드는작업 ● 프로그램이란 작은 명령(code)들이 많이 모여 실행 가능한 파일이 된 것이다. code code code code code code code code code code 프로그램 물론 진짜 이렇게생기지는 않았다.
  • 8.
  • 9.
    음.. 재료로는 당근, 양파,감자, 카레가루가 필요하고 칼이나 도마, 그릇같은 도구가 필요할 것 같아요!
  • 10.
    프로그래밍을 요리에 비유해보자! ●요리를 하려면 음식 재료와 손질할 도구, 담을 그릇이 필요하다. ● 프로그래밍 역시 프로그램을 완성하기 위해선 재료와 도구 그리고 재료들을 정리할 그릇이 필요하다!
  • 11.
    그래서 우리는 이제프로그래밍에 필요한 재료, 그릇, 도구를 배울 것 입니다! 레고레고~~
  • 12.
  • 13.
    데이터형 (Data type) ●프로그래밍에는 다양한 데이터가 사용된다. ● 재료를 나눌 때 당근과 양파는 야채이고, 사과와 파인애플은 과일인 것처럼 데이터에도 서로 다른 종류의 데이터가 있다. ● 이런 데이터의 종류를 데이터 형(Data type)이라고 한다. ● 그 중에서도 파이썬 데이터 형의 가장 기본인 내장 데이터형(Built-in Types)에 대해 먼저 배워보자!
  • 14.
    내장 데이터형은 파이썬에처음부터 가지고 있는 데이터형을 뜻한다. (import 문을 사용하여 외부로부터 불러들일 필요가 없는 데이터!) 참고 : https://docs.python.org/3/library/stdtypes.html ● 정의 The principal built-in Types are numeric, sequences, mappings, classes, instances and exceptions. 내장 데이터형 (Built-in Types)
  • 15.
    내장 데이터형 (Built-inTypes) ● 종류 Numeric String List Tuple Dictionary Set
  • 16.
  • 17.
  • 18.
    Sequence Data ● 종류 Numeric String List Tuple Dictionary Set ●순서가 있는 데이터 ● 순서가 있다는건 ? 번호를 붙여 나열할 수 있다! ● 따라서 “4번째 데이터가 무엇이냐?” 혹은 “2번째부터 5번째 데이터를 뽑아 나열해라!” 같은 명령을 실행할 수 있다. -> indexing & Slicing
  • 19.
    중복 가능 vs.불가능 ● 종류 Numeric String List Tuple Dictionary Set ● 데이터를 담는 그릇은 4가지 ● 그 중 List와 Tuple은 담았던 재료를 또 담을 수 있지만 Dic과 Set는 그렇지 않다. * Dic의 Key 값이 중복 불가능, value는 중복 가능
  • 20.
    1. 숫자열 (Numeric) ●숫자형태로 이루어진 데이터 ● 정수, 소수, 복소수형으로 표현이 가능하다. ex. 1, 0, 1.0, 1+3j 내장데이터형
  • 21.
    2. 문자열 (String) ●작은 따옴표(‘ ’) 혹은 큰 따옴표(“ ”)로 묶은 것이 문자열이다. ● 숫자도 따옴표로 묶으면 문자열로 인식한다. ex. “20190421”, ‘오픈컬리지’ 내장데이터형
  • 22.
    3. 리스트 (List) ●목록이라는 뜻으로 숫자나 문자열 등을 나열하여 저장하는 데이터형이다. ● 콤마 (,)로 구분하고 전체를 대괄호([])로 감싼다. ex. [1,2,3,4] / [‘a’, ‘b’, ‘c’] ● 파이썬 시퀀스 중에서 가장 많이 사용된다. 내장데이터형
  • 23.
    4. 튜플 (Tuple) ●데이터를 담는 것은 List와 비슷하지만 수정이 불가능하다. ● 그렇기 때문에 바뀌면 안되는 값을 담을 때 튜플을 사용 ● 또한 Tuple이 List 보다 연산이 빠르다. ● 콤마(,)로 구분하고 전체를 소괄호( () )로 감싼다. ex. (‘월', ‘수', ‘금') 내장데이터형
  • 24.
    5. 딕셔너리 (Dictionary) ●사전형 데이터 ● 키(key)와 값(value)을 쌍으로 저장하고 키를 사용해서 값을 호출한다. ● 키와 값을 콜론(:)으로 연결해 한 쌍으로 하고 콤마(,)로 구분 짓는다. ex. country_code = {82 : ‘Korea’, 1 : ‘America’, 81 : ‘Japan’} ● 키는 절대 중복되지 않는다. 참고 : https://docs.python.org/3/library/stdtypes.html 내장데이터형
  • 25.
    6. 세트(Set)세트_집합형 데이터 ●집합형 데이터 ● 단순한 데이터 모음 (순서가 없다) ● 중복 불가 ● 콤마(,)로 구분하고 중괄호({}) 로 감싼다. ex. {‘형’, ‘주’, ‘이'} 참고 : https://docs.python.org/3/library/stdtypes.html 내장데이터형
  • 26.
    와.. 너무 많이배웠다. 중간 정리 한번 할까요?
  • 27.
    지금까지 프로그래밍의 기본재료에 대해 배웠어요. 바로 내장 데이터형! 내장 데이터형은 크게 재료와 그릇으로 나눌 수 있는데, 재료는 숫자(numeric)와 글자(string) 그릇은 재료들을 괄호로 담는 4가지! List, Tuple, Dict, Set
  • 28.
  • 29.
  • 30.
    변수 할당 ● 어떤재료인지 기억하기 위해 그릇에 이름을 붙이는 것 처럼 데이터도 이렇게 이름을 붙여 줄 수 있다. ● 프로그래밍에서 데이터에 잠깐 붙여주는 이름을 변수라고 한다. ● “값을 할당한다” 라고 한다. ● 할당 연산자는 “=” ** “=” 는 같다라는 의미가 아니다. (코딩에서 같음은 “==”로 표시) 최근에 할당한 값이 변수에 들어가 있는 것이지 영원히 그 값이 아니니까!
  • 31.
    변수명 작성법 ● 변수의이름은 자유롭게 붙일 수 있다. ● 띄어쓰기는 사용할 수 없어 언더바(_)로 대체한다. ● 알파벳 대소문자가 구별된다. (xyz =! XYZ) ● 변수의 첫글자로는 숫자를 사용할 수 없다. ● 파이썬 프로그램에 내장되어 있는 모듈, 라이브러리 이름은 사용할 수 없다. (if, and, or 등)
  • 34.
    함수(Function)란 무엇인가? 당근과 양파를믹서기에 넣고 갈면 무엇이 나올까요? 함수는 프로그래밍에서 믹서기와 비슷한 역할을 합니다. 입력값을 가지고 어떤 일을 수행한 다음에 그 결과물을 내어놓는 것, 이것이 바로 함수가 하는 일입니다. 여기서 입력값은 당근과 양파, 어떤일은 믹서기에 가는 것, 출력값은 아무도 먹지 않을 어떤 것이 되겠네요
  • 35.
  • 36.
    함수는 왜 필요할까? 프로그래밍을하다 보면 똑같은 내용을 반복해서 작성해야 할 때가 있는데요, 이때 바로 함수가 필요합니다! 반복되는 부분이 있을 경우 그 부분을 묶어 하나의 식으로 만드는 즉, “어떤 입력값을 주었을 때 어떤 결과값을 돌려준다.”의 식의 함수로 작성하는 것 입니다.
  • 37.
    감자는 감자칼로 써는게 편하고, 생선은 사시미를 사용하는게 편한 것 처럼 재료에 맞춰 이용되는 함수가 있습니다.
  • 38.
    매서드 (Method) ● 특정재료형을 위한 함수 ● 데이터형 (string, numeric, list 등)에 따라 사용할 수 있는 함수들이 달라진다.
  • 39.
    그렇다면 함수와 메소드차이는 무엇일까? ● 둘 다 특정한 연산 처리를 도와준다는 것은 같다. ● 차이는 객체(object)에 속해있는지 여부이다. ● 메소드는 객체에 속해있는 함수라고 정의할 수 있고 그렇기 때문에 큰 의미에서 메소드는 함수에 속한다. ● 쉽게 이야기 하면 함수를 사용할 때 특정 객체가 필요하면 그것은 메소드가 된다.
  • 40.
    마지막 총 정리 요리= 프로그래밍 요리를 하려면 재료, 그릇, 도구가 필요! 프로그래밍의 재료, 그릇 & 도구 = Data type & 함수(<- 메서드) 재료에 이름 붙이기 = 변수 할당 재료를 사용하는 도구 = 함수 재료의 특성에 맞게 사용하는 도구 = 메서드
  • 41.