Python 기본
Python 프로그램 일련의 정의와 명령문으로 구성 스크립트(script)라고도 불림 command 혹은 statement라고 불리는 문장들이 인터프리터가 무언가를 하도록 지시함 print 'This is my first Python program.'
데이터 타입 프로그래밍에 사용되는 데이터들은 타입을 구분함 Python에는 크게 세 가지 데이터 타입이 존재 숫자형 문자열 5, 10.3, -2, -1.02 사칙연산 등을 수행할 수 있음 문자열 "apple", "Hello, world!", 'Yeungnam University', "15" 큰 따옴표나 작은 따옴표로 표현 부울(Bool) True, False
수치와 연산 숫자형 데이터에 적용되는 연산 사칙연산 나누기는 뒷장에
나누기 Python 2.x에서는 정수끼리 나누기 연산의 결과는 정수로 나타난다. 소 수점 아래의 숫자는 버린다. 3/4 3/4.0 0.75 3.0/4 Python 3.x 3/4 0.75
Variable explorer 만약 Spyder를 이용 중이라면 Variable explorer를 이용하여 변 수의 내용을 확인해 보자.
변수명 규칙 Python 변수명은 문자나 _로 시작 첫 글자가 아닌 나머지 부분은 문자, 숫자, _가 올 수 있음 _the_string my_variable 첫 글자가 아닌 나머지 부분은 문자, 숫자, _가 올 수 있음 password1 n00b un_der_score 대소문자 구별 : X와 x는 서로 다른 변수 변수명을 짓는 방법 알아보기 쉽게 짓는다. apartmentname -> apartment_name 혹은 apartmentName 무슨 변수를 나타내는지 알아보도록 짓는다. afmowpv : 아무 의미 없어 보이며 이렇게 짓지 않음 average_num_students : 학생 수의 평균을 의미하는 것을 알 수 있음
변수 지정에 있어 Python의 특징 많은 다른 프로그래밍 언어의 경우 변수형을 따로 명시해 주어 야 함. 예를 들어, int n = 10 정수(integer)형 변수 double x = 2.12 double precision을 가지는 실수형 변수 char c = 'a' 문자(character)형 변수 Python은 int, double, char 등과 같은 변수형에 대한 keyword 를 따로 지정해 주지 않음
Dynamic types Python에서는 데이터 type을 따로 명시하는 것이 아니기 때문 에, 프로그램 중간에 데이터 type이 바뀔 수 있음 x = 10 … x = 'John' … x = True 그러나, 하나의 변수가 한 프로그램 내에서 데이터 타입이 변하는 것 은 바람직하지 않으며, 동일한 데이터 타입을 유지하도록 함 반면 변수의 값은 계속 변할 수 있음
예제
multiple assignment Python에서는 다음과 같이 여러 개의 변수에 한 번에 값들을 지 정할 수 있다.
문자열 출력해보기 프로그래밍의 가장 기본 예제를 연습해 보자 따옴표로 둘러싸여 있는 부분은 문자열을 의미하며 print 명령 을 통해 해당 문자열 - 여기서는 Hello, world! - 을 화면에 출력 하라는 뜻이다. 큰 따옴표, 작은 따옴표 모두 가능 Python 2.x에서는 괄호 생략 가능, Python 3.x에서는 불가
비교연산 비교연산의 종류 비교연산자를 사용한 식이 옳 을 경우 True를, 그렇지 않을 경우 False를 반환 비교연산자 대응되는 수학 기호 < <= ≤ > >= ≥ != ≠ == =
주석(comment) 코드에 설명을 넣고 싶을 때 한 줄로 주석 넣기, #으로 시작 # This code solves the P vs NP problem. 여러 줄에 걸쳐 주석을 넣을 때, """를 이용 """ Turing used this code to crack the Enigma. With this code, anybody hack a server like a pro. """
type checking 실수로 잘못 입력된 형태의 type을 찾아준다.
.이 필요한 method와 없는 function lower()와 upper() 등의 method는 dot(.)을 이용하며 string에 종 속된 method str(), len() 등은 dot(.)을 이용하지 않으며 괄호 안의 인자에 여러 형태의 데이터형이 올 수 있음 method와 function에 대해 다음에 더 자세히 알아보자
%s의 자리에 뒤에 따라오는 name과 home의 문자열이 들어감
문자열 입력 Python 2.x 에서는 raw_input 함수를 이용하여 문자열을 입력받는다.
문자열 입력(2) Python 3.x 에서는 input 함수를 이용하여 문자열을 입력받는다.
Spyder에서 스크립트 작성하기 스크립트를 이용하여 (여러 라인의) 프로그램 작성 후 Spyder에서 실행 파일을 저장 후, 버튼을 이용하여 실행 IPython console에서 다음과 비슷한 출력을 확인할 수 있음 runfile('C:/Code/Python/example.py', wdir='C:/Code/Python') 특정 부분만 블락을 씌워서 버튼을 이용해 일부분만 실행 가능
소스 코드와 스크립트 소스 코드와 스크립트라는 두 개의 용어는 Python에서 같은 용 어로 사용되기도 함 C언어에서는 코드를 모아서 만든 소스 코드에 컴파일이라는 작 업을 해서 프로그램을 생성 – 소스 코드 자체는 프로그램으로 실행할 수 없음 반면 Python은 소스 파일이 그대로 프로그램의 역할 가능 Python과 같은 컴파일 작업이 필요 없는 언어를 스크립트 언어 라고도 함 실제로는 Python에도 컴파일을 할 수 있는 기능이 존재