1

난생 처음 파이썬 프로그래밍 - 1

난생 처음 파이썬 프로그래밍 - 1

노아의 블로그

    목차
반응형

프로그램은 하드웨어가 작동할수 있도록 하는 명령의 집합이다.

우리가 자주 사용하는 카카오톡, 웹 브라우저, 게임 등의 것이다.

 

소프트웨어, 프로그램, 애플리케이션, 앱 모두 동일한 용어이다.

 

여기서 이러한 프로그램을 만드는 행위를 바로 프로그래밍 이라고 하고

프로그래밍을 하려면 프로그래밍 언어로 프로그래밍을 할 수 있다. 

 

대표적으로 C, JAVA, PYTHON 등이 있다.

 

우리는 이런 프로그래밍 언어로 프로그램을 개발하는 일을 하는 자를 바로 프로그래머 라고 부른다.

 

프로그래밍 언어는 대표적으로 2가지로 구분을 할 수가 있는데 컴파일러 언어와 인터프리터 언어로 구분을 할 수 있다.

 

컴파일러 언어는 C, JAVA , C++ 같은 C 계열을 계승한 언어 등으로 이루어져 있고 

인터프리터 언어는 Python, Javascript 등이 있다...

 

프로그래밍 언어는 사람만 이해할 수 있는 언어이다. 영어와 숫자로 구성되어있는데.. 

기계는 0과1만 알아듣기 때문이다. 따라서 이해를 할 수 없다. 

 

그래서 프로그래밍 언어를 기계가 알아들을 수 있도록 0과 1로 변역을 진행해야 하는데

이것을 바로 '컴파일' 이라고 부른다. 

 

이러한 컴파일의 방법을 어떻게 진행하는가? 에 따라서 컴파일러 언어와 인터프리터 언어로 나뉜다.

 

우리가 프로그래밍 언어로 작성한 코드를 소스코드라고 하는데 컴파일러 언어는 이 소스 코드들을 모두 컴파일러라는 번역기를 거쳐서 이진 코드로 된 실행 파일을 만든 후, 실행을 할 수 있다. 

 

반대로 인터프리터(스크립트) 언어는 이러한 컴파일러를 통한 컴파일 과정을 거치지 않고, 실행시 한줄 한줄 번역을 해서 실행을 한다. 

 

여기서 컴파일러 언어는 컴파일 후 실행파일을 생성하는 과정인 빌드과정을 거쳐야지만 실행을 할 수 있고 

인터프리터 언어는 그런 과정을 생략하니까 가볍고 수정이 자주 일어나는 곳에서 우위를 가질수 있다.

 

하지만 치명적인 단점으로 어떤 명령을 실행시 번역 과정이 필수됨으로 지속된 성능을 챙기기 어렵다.  

 

 파이썬은 1991년 '귀도 반 로섬' 이라는 네덜란드 공학자가 35세 쯤에 만든 언어이다.

 

현역 언어들중 비록 최근에 만들어졌으며, 쉽고 간편하고 강력한 라이브러리 지원 등의 장점이 있다.

 

파이썬 설치 파이썬 공식 홈페이지에서 하면 되니까 생략...

 

설치하면 Python Idle이라는 프로그램이 있는데 이것은 파이썬 통합 개발 환경 도구라고 할 수 있다.

 

Python shell이라는것이 있는데 리눅스의 그 쉘을 생각하면 좋다. 한줄만 쓸수 있고 대화형 방식으로 진행된다.

 

Python에서 출력을 할 수 있는 명령어는 바로 print()이다.

 

이렇게 Shell에 명령어를 입력하고 결과를 받아볼 수 있다. Print문은 숫자 혹은 문자를 넣어서 그것을 출력할 수 있다.

 

문자열을 표시할 때 "" 큰 따옴표로 감싼것은 바로 문자열을 표시할 수 있다.

 

이런식으로 계산도 할 수 있다.

 

우리가 쓰는 사칙연산은 컴퓨터에서 +, -, *, /로 사용된다. (더하기, 빼기, 곱하기, 나누기)

 

그리고 이렇게 쓴다면 아까 말했듯, "" 큰 따옴표로 감싸진 것은 문자열 취급을 하기 때문에, 우리가 원하는대로 계산을 할 수 없고 그 자체, 통으로 문자로 인식된다. 즉 숫자가 아니라 그냥 문자인 것이다.

 

 

컴퓨터 프로그램은 무언가 값을 저장(기억)하기 위해서는 변수라는것을 사용한다.

그리고 컴퓨터 프로그램은 주기억장치(Memory)에 값을 저장한다.

변수는 값을 저장하는 메모리상의 공간이다.

 

우리가 피구를 한다고 가정해보자. 점수는 1 : 5다. 우리는 기억속에 피구 점수 -> 1 : 5라는 정보를 기억할것이다.

여기서 피구 점수는 변수가 되고 1 : 5는 변수에 들어간 값이다.

뭔가를 담는 박스, 혹은 그릇이라고 생각하면 된다.

 

100 + 200 = 300

100 + 200 = -100

100 * 200 = 20000

100 / 200 = 0.5

 

이렇게 사칙연산을 진행해서 값을 출력하는 프로그램을 만들어보자.

 

어떠한 두 수로 사칙연산을 진행하는것이다. 따라서 어떠한 두 수를 담는 변수가 필요하다. 

여기서는 각각 100과 200이 해당된다.

 

아, 참고로 Shell은 한줄만 실행하는데 적합하기에 

스크립트를 모아놓은 스크립트 모드에서 작업해야한다.

이렇게 두 변수에 어떠한 수를 담고,

각각의 연산을 print한다.

 

여기서 print함수에서는 콤마(,)로 구분해서 여러개를 출력할 수 있다. 

 

결과값이 올바르게 나온 모습이다.

 

하지만 우리가 만약 다른 값으로 연산을 하고 싶다고 해보자. 음.. 1000과 2000이라던지 아무튼 다른 수 말이다. 그렇게 하려면 우리는 변수의 값을 계속 변경하고, 실행하고를 반복해야한다.

 

이렇게 하지 말고 또 다른 방법이 있는데 바로 사용자 입력을 받아서 처리를 하는것이다.

 

이 경우 Python은 Input 함수를 제공해서 사용자 입력값을 처리한다.

 

실행해보면, 아무것도 뜨지 않고 깜빡거린다. 깜빡거린다는 뜻은 입력을 받고 있다는 뜻인데 조금 더 사용자 편의성을 고려한다면 안내가 필요할것이다 

이렇게 소괄호 안에 문자열을 넣어서 출력과 입력을 받을수있다. 여기서 소괄호 안에 들어간것을 바로 매개변수라고 한다.

 

입력을 한 결과 오류가 발생하였다.. 왜냐하면 입력은 바로 문자를 입력받기 때문이다. 문자를 뺄 수 있는가? 문자를 나눌수 있는가? 문자로 사칙연산은 불가능하다. 그렇기 때문에 타입 변환을 해주어야 한다. 

 

앞에 변환할 타입과 괄호를 적어 변환할 수 있다.여기서는 정수형 이기 때문에 int라고 붙인다.

이것을 int 함수라고 부른다. 

 

이렇게 정상적으로 처리가 진행되었다.

반응형