본문 바로가기
파이썬과 주식

3. 파이썬 Python 개요 - 자료형(Data Type)

by 에쓰지 2022. 6. 9.
※ 늦게라고 "코딩"이란 것을 배워봐야 겠다는 사람이 있다면 혹시라도 도움이 될까해서 나의 경험담을 적어보려 합니다.

지난 회차에 파이썬 코드를 이용한 주가 데이터 다운로드 받는 것을 알아봤습니다.

2022.06.03 - [파이썬과 주식] - 2. 주가 데이터 다운로드 받기 ( 엑셀 / CSV )

 

2. 주가 데이터 다운로드 받기 ( 엑셀 / CSV )

※ 늦게라도 "코딩"이란 것을 배워봐야겠다는 사람이 있다면 혹시라도 도움이 될까 해서 나의 경험담을 적어보려 합니다. 지난회차에 파이썬 Python을 사용할 환경설정을 위해서 아나콘다 Anaconda

pmxsg.tistory.com

작년 11월경 부터 HTML,CSS,Java Script 등 웹 관련 코딩을 시작하고 나서 웬만큼 웹페이지도 만드는 연습도 한참 하고나서 좀 익숙해질 무렵에  구글이나 유튜브 검색을 해보면 가장 많이 나오는 것이 HTML/CSS가 아니라 "파이썬" 이란 프로그래밍 언어였습니다.  뭔가 궁금하기는 하지만 과연 배워서 이해할  수는 있는 것인가 걱정도 되고 해서 배워보겠다는 도전을 차일피일 미루고 있었던 것 같습니다. 

 그러다 "Business Analyst " 강의 동영상을 보는데, 자료를 분석하는 데 파이썬이라는 프로그램을 이용한다고 하면서 강의 내용의 절반이 파이썬 코드에 대한 내용이었습니다. 결국 지금은 경영학을 공부를 하려고 해도 코딩과 연결이 되어 있구나 싶어 이해를 잘 못하더라도 일단 어떤 프로그램인지 알아나보자 하는 마음으로 파이썬관련 강의들을 들었습니다. 들었던 내용은 많은 데 정리를 못하고 있어서 이번 회차에는 파이썬 python의 기본적인 부분에 대해서 정리해 보고자 합니다. 


 

1. 파이썬 Python 소개

 

 파이썬에 익숙하지 않은 분들도 사용할 수 있는 프로그램을 만드는 것이 목표로 하고 있지만, 파이썬에 조금 관심을 갖고 사용하게 되면 "또 다른 세상이 여기 있구나" 하는 생각이 들 수도 있습니다.  관심이 막 생기시는 분들에게 조금이나마 도움이 될 수 있었으면 하는 마음으로 파이썬을 소개해 보고자 합니다.


파이썬 관련 책이나 동영상을 보다보면 가장 처음 나오는 것이 " 파이썬은 쉽다." 라는 말입니다. 개인적인 의견은 프로그래밍을 좀 알고 있는 사람에게만 적용되는 것이 아닌가 싶긴 하지만, 하여간 대부분은 "파이썬은 프로그래밍 언어 중 가장 배우기가 쉬워서 프로그래밍을 전공하지 않는 분들도 쉽게 배울 수가 있다고 합니다. "

    그 근거로 파이썬은 C,C++,자바보다 약 1/3 또는 1/5 정도의 코드만으로도 같은 기능을 수행할 수 있어 개발 생산성이 높다고 합니다. 그리고 파이썬의 문법은 다른 프로그래밍 언어에 비해 상대적으로 자연어에 가까워 직관적으로 이해하기 쉽다고 합니다.

지금 가장 인기있는 프로그래밍 언어라고 합니다.

출처 : https://www.tiobe.com/tiobe-index/

 

TIOBE Index - TIOBE

Home » TIOBE Index TIOBE Index for May 2022 May Headline: C# gains most ranking points If we compare the current TIOBE index rankings to 1 year ago (May 2021), C# is gaining most popular of all programming languages by far. Its rankings has increased almo

www.tiobe.com

 

인기가 많다는 것은 그만큼 찾아보며 배울 자료가 많다는 의미이기도 합니다. 뭔가 문제에 부딛혔을 때 검색으로 해결책을 찾기 쉽다는 것이기도 합니다. 

 파이썬으로 할 수 있는 일을 검색해 보시면 정말 많은 분야와 연결되어 있는 것을 알 수 있을겁니다.

시스템 유틸리티 제작, 웹페이지 개발, 게임 개발, 데이터 분석, 업무 자동화 등등

파이썬은 "라이브러리"란 다른 프로그램의 구성 요소로 사용하기 위해 미리 만들어 둔 프로그램 조각인데 한 번 만들어 놓으면 여러 프로그램에서 재사용할 수 있고, 다른 사람과 공유할 수도 있습니다. 파이썬의 기본적인 문법 정도만 알게 되면 라이브러리를 사용하여 자신이 원하는 프로그램을 만들 수도 있고, 이미 만들어진 오픈 프로그램을 보다 손쉽게 사용하실 수도 있을 겁니다. 


2. 파이썬 Python - 자료형 Data Type

 

 파이썬 강의를 보다보면 소위 기초문법이라는 것으로 시작하는 부분이 대부분 자료형 Data Type 인 경우가 많습니다.  처음에 모를 때는 앞뒤 생각없이 무작정 끝까지 들어보자는 마음으로 이해가 되지 않는 부분이 많았지만 그냥 넘어가는 방식으로 들었습니다. 머리가 굳어서 그런건지 몇 번을 반복해서 들어야 간신히 대충 이해할 수 있는 정도가 되긴 했습니다. 그러다 "왜 대부분의 파이썬 강의들은 시작을 Data 부터 시작하지? " 하는 의문이 생겼습니다. 곰곰이 생각해보니 컴퓨터 프로그래밍 즉 코딩 이라는 것이 코드를 잘 만들어서 컴퓨터가 실행하게 만드는 것이고, 그 코드를 만드는 재료를 자료형(숫자,문자 등), Data Type라 분류해서 지칭하는 것은 아닐까 라는 하고 정리를 하니 좀 이해되는 것 같았습니다.코딩에 필요한 재료를 분류한다는 개념으로 설명해 보겠습니다.


(1) 숫자형 

가장 기본적인 데이터 타입입니다.

분류는 "int(정수)", "float(실수)", "complex(복소수)" 로 나누어 집니다.수학적으로 깊게 들어가지 않는 한 "복소수"는 잘 쓰지는 않을 것 같습니다.

자료 타입은 type( ) 함수로 확인 할 수 있습니다.


(2) 시퀀스 형 ( Sequences Type )

Sequence는 순서라는 의미가 있듯이 숫자로 순서를 표시할 수 있는 자료형을 나타냅니다.  

시퀀스 형은 

  str (문자열) , list (리스트) , Tuple (튜플) 로 분류할 수 있습니다.▶  문자열 Strings ( str )       " "(큰따옴표) 나 ' '(작은 따옴표) 안의 자료(Data)를 문자열 (str)이라고 합니다.      예를 들어, " 1 " 의 경우 따옴표 안의 1은 숫자가 아닌 문자로 컴퓨터는 인식합니다.

      데이터 타입의 구분은 사람이 아니라 컴퓨터가 인식할 수 있도록 만들어진 것이라고 합니다. 

▶ 리스트 List ( list )

    리스트란 0 에서 시작하는 순서 있는 목록입니다. 

    [ ] 대괄호 안에 쉼표로 구분된 자료들의 모임을 리스트라고 합니다.

     대괄호 안에 숫자형나 문자열을 혼합해서 들어가도 쉼표로 구분을 하면 전체를 list로 컴퓨터가 인지합니다. 

▶ 튜플 Tuple ( tuple )

  ( ) 소괄호 안데 쉼표로 구분된 자료들의 모임을 튜플이라고 합니다.

   

   리스트와 튜플은 거의 유사해보이지만, 가장 큰 차이점은 리스트는 수정,추가,삭제 등 변화를 줄 수 있지만 튜플은 변화를 줄 수 없습니다.  변화를 주면 안되는 자료가 있다면 리스트 형태가 아닌 튜플 형태로 만드는 것을 추천드립니다.


(3) 집합형 Set

  •   { } 중괄호 안데 쉼표로 구분된 자료들의 모임을 집합 Set이라고 합니다.
  •  set은 수학에서 이야기하는 집합과 비슷합니다.
  • 순서가 없고 집합 Set 안에서는 unique한 값을 가집니다.


(4) 사전형 Dictionary

  •  { } 중괄호 안데 쉼표로 구분된 자료들의 모임으로 key와 value는 한쌍으로 이루어져 있고, : (콜론) 로 구분한다.
  •  즉," { key : value , key : value } " 형태를 취합니다.
  • 집합과 같이 { } 중괄호를 사용하지만 key : value 형태로 나타납니다.


(5) Boolean 형 

  •  블리언 타입은 값을 참(True) 과 거짓(False) 중 한 가지만을 가질 수 있는 데이터 타입입니다.



위의 데이터 타입 중에,

리스트(List), 튜플(Tuple), 집합(Set), 딕셔너리(Dictionary) 는 괄호의 형태만으로 구분합니다.

처음에 왜 비슷해보이는 데 이렇게 구분해 놓았을까 하고 의문도 들었었는데, 컴퓨터는 사람처럼 직관으로 이해할 수 없기 때문에 하나하나 구분해줘야 작동할 수 있다는 말을 듣고서 어느 정도 이해하게 되었습니다.

각각의 쓰임새는 앞으로 각 데이터 타입을 사용할 때 다시 설명하도록 하겠습니다.

다만,  문자열 :  " ", ' '  / 리스트 (list) : [ ] / 튜플(Tuple) : ( ) / 집합(Set) : { , } / 딕셔너리(Dict) : { : , : } 의 괄호 모양만 기억해두시면 됩니다.


3. 파이썬 Python - 변수 Variable 

 

데이터  타입과 함께 앞뒤로 나오는 것이 아마도 변수 Variable 가 있습니다.

"변수는 데이터를 저장하기 위한 장소입니다. 그래서 그릇이라고 하기도 하고 컨테이너라 말하기도 합니다." 라고 Java Script 변수를 설명할 때 언급한 적이 있습니다.

2022.04.24 - [50대에 코딩에 도전해 봅니다.] - 19. Java Script - 변수, this

 

19. Java Script - 변수, this

※ 늦게라도 "코딩" 이란 것을 배워봐야 겠다는 사람이 있다면 혹시라도 도움이 될까 해서 나의 경험담을 적어보려 합니다. 지난 회차에 Java Scrip 조건문인 if문 에 대해서 알아봤습니다. 2022.04.18

pmxsg.tistory.com

파이썬과 Java Script의 변수의 사용이 100% 같지는 않겠지만 대체로 사용방법은 비슷합니다.

변수를 사용할 때 파이썬에서 변수 이름 생성에는 몇 가지 규칙이 있습니다.

  • 대소문자를 먼저 구분
  • 문자 A~Z 또는 언더바( _ )로 시작이 가능
  • 변수이름의 첫 시작을 제외하고 숫자를 사용할 수 있음
  • 특수문자 @, $, % 등은 식별자로 사용할 수 없음
  • 띄어쓰기 포함 불가
  • 예약어, 내장 함수, 모듈이름은 이미 활용되고 있기 때문에 예약어, 내장 함수, 모듈 이름은 사용 안됨.

           파이썬에서 이미 특정 의미로 사용하기로 예약해 놓은 것을 키워드라고 하는데 변수 이름으로 사용할 수 없습니다.

  변수의 데이터 타입은 변수가 담는 그대로를 가지고 옵니다.

  위 변수 stock에 담긴 딕셔너리  {"SK이노베이션":"096770","현대모비스":"012330","SK":"034730"} 을 그대로 가져와 stock의 타입을 확인해 보면 딕셔너리 (dict) 임을 알 수 있습니다.

변수를 할당하는 방법은 "변수이름 = 값"   등호로 변수에 값을 할당합니다.

수학적 의미의 등호는 "==" 등호를 2개를 사용합니다. 등호가 하나일 때는 "오른쪽 값을 왼쪽 변수에 담는다"라고 이해하시면 됩니다.


 

댓글