top of page
  • 작성자 사진JC.kim

[Python] Script 및 기본 연산

최종 수정일: 2018년 3월 6일

Python은 매우 객체지향적인 언어로써, 사용자와 언어간 실시간 상호작용으로 프로그램을 구성하는 객체지향언어이다. 우리는 그래서 따로 컴파일 과정없이 코딩을 할 수도 있지만, 코드가 길어지거나, 중간에 오타가 발생할 경우, 여태까지의 코드라인을 모두 수정해야 할 것이다. 그런 일을 방지하기위해 먼저 Python Script에 대해 알아보면서, Python에 대해 쉽게 접근해 보자.

Script를 만드는 것은 그렇게 어렵지 않다. text문서를 열어 그 안에 Python 코드를 작성한 뒤, 확장자 명을 name.py로 (.py) 저장해 주면 하나의 Script가 완성된다. Script의 실행은 'Python name.py ' 라고 명령어를 입력하면, script가 자동으로 실행된다. 아래는 아주 기본적인 예제이다.

여기서 (#) 기호는 셔뱅 Shebang이라는 특수한 기호로, script에 영향을 주지 않는다. 위의 셔뱅은 python 버젼을 유닉스 환경에서 쉽게 찾기위해 입력되었다. 다른 운영체제 간 script를 공유하거나 사용하기 위해 작성해 주는 것이 좋다. 셔뱅은 또한 각주(코드에 대한 설명)을 달아 줄때도 사용하기에 용이하다. 이 셔뱅기호는 특정 코드를 공동이 작업하거나 다른 코드를 호출하기 위해 확인할 때, 작성자가 어떤의도로 코딩을 했는지 알려줄 수 있다.

그 아래 print 함수가 있다. 말 그대로 ""내의 문장을 화면에 출력해 주는 함수이다. 위의 스크립트를 그대로 실행하면, Output #1 : I'm excited to learn Python. 이라고 화면에 출력될 것이다. 다음으로 기본적인 Python의 연산과 Data 형태에 대해 알아보자.

위의 코드는 x에 4를, y에 5를 입력하여 두 변수를 더한 z값을 출력하는 코드이다. print 내에 {}기호는 print문에 전달되는 placeholder이다. 이곳에 z로부터 값이 전달된다. {}내에 0은 format안에 들어가는 첫번째 변수를 의미한다. 아래의 코드에서 각 placeholder내 format의 a,b,c 값이 차례로 들어갈 것이다. 그리고 (:) 콜론 표시는 변수의 형식과 값을 분리한다. 여기서 :d 는 정수 10진수 값이 들어가야 한다는 의미가 된다.

위의 코드는 list를 이용하였다. list는 숫자형 자료형(연속형) 문자형과 자료형(범주형)을 사용 할 수 있다. a의 경우 숫자형이고 b의 경우 문자형이다. 이 list는 []기호로 감싸고 , 기호로 각 값을 구분한다. .format은 매우 유용한 method이다. 위에서 설명했듯이 각 placeholder에 차례로 a,b,c값을 입력할 것이다. 만약 이 .format을 사용하지 않는다면, 위의 list를 표현하기 위해 "Output #3 : ",a,",",b,",",c 이런식으로 복잡하게 작성 해야 한다.


이제 Python의 기본적 연산과 데이터 형식에 대해 살펴보자. 아래는 정수형데이터와 실수형 데이터 연산이 나와있다.

위의 4번 Output은 x에 9를 입력하여 출력하는 구문이다. python은 특별한 선언없이도 스스로 데이터 형을 구분할 수 있는 강력한 장점이 있다. Output 5번은 3의 4 제곱을 계산한 것을 placeholder에 출력한다. * 문자가 하나일땐 곱, ** 두번 일때는 제곱계산을 한다. Output 6번은 정수형으로 숫자를 변환한 다음 계산을 한다. 본래 int라는 데이터 형식이 붙지 않는다면, 결과값도 실수형으로 출력할 것이다. 하지만 앞서 예제 처럼 데이터 형식을 선언해 주어 값을 출력할 수도 있다. Output 7은 따로 데이터 선언을 하지않았고, 그 값에 결과는 소수점 3째 자리까지 출력되는 구문이다. (.3f) f는 float 부동소수점을 의미한다.

Output 8의 경우, 미리 계산된 y 값을 불러와 소수점 1자리까지 출력하는 구문이다. 여기서도 데이터 형식을 따로 선언하지 않았다. Output 9번과 Output 10 번은 8/3을 다른 방법으로 표현한 것이다.

위의 연산들은 Python에 기본적으로 내장되어있는 연산들만 이용하여 계산을 수행하였다. 그러나 우리가 더 복잡한 연산을 하고자 할 때, 다른 라이브러리 (연산관련 라이브러리)를 불러와 그 라이브러리에 있는 method를 사용해야 한다. 아래 math모듈을 호출하여 exp나 log 같은 연산을 진행 할 수 있다.

위와 같이 선언할 수 있으며, 여기 exp, log, sqrt는 모두 math 안에 내장되어 있는 method이다. 이 method를 이용해 아래 계산을 진행해 보자.

Output 11은 자연상수의 거듭제곱, Output 12는 자연로그함수 Output 13은 제곱근을 구하는 함수이다. 위의 구문들을 실행해보면 아래와 같은 결과를 얻을 수 있다.


이렇게 Python에 대한 기본적인 연산과 math모듈을 이용한 연산에 대해 알아보았다. 다음은 문자열의 기초적인 방법에 대해 알아보자. 내가 이용하고 있는 교재는 클린턴 브라운리의 'Foundations for Analytics with Python'에 예제들을 이용했으며, 기초문법이나 Python 기초에 있어서 더 심도하게 공부하고 싶은사람은 Jump to Python 교재를 이용하면 될 것 같다.


Jump to Python 위키독스 : https://wikidocs.net/book/1

Foundations for Analytics with Python: https://g.co/kgs/AYhnCY

조회수 1,661회댓글 0개

최근 게시물

전체 보기

bottom of page