본문 바로가기
Python/기초 과정

파이썬 특징(+기초 문법과 주석)

by To올라운더 2023. 6. 4.
반응형

파이썬의 특징과 기초 문법이라고 제목을 적었지만, 

파이썬의 프로그래밍적 언어적 특징을 제외한 기초문법의 중요 키워드는

'들여쓰기' 라는 한 단어로 얘기해도 무관할 정도로 간결하다.

(대신 들여쓰기를 잘못하면 계획한대로 동작하지 않는다.....)

파이썬의 기초문법과 전체적인 특징에 대해서 잠시 알아보면,

 

특징-1, 인터프리터 언어

프로그래밍언어는 몇가지 구분 기준이 있는데,

코드를 읽어들이는 방법에 따라

전체를 읽어 들어고 실행하는 컴파일 형식의 언어

한줄씩 읽어가며 실행하는 인터프리터 언어로 구별된다.

우리가 배울 파이썬의 경우, 후자인 인터프리터 언어에 해당한다.

 

컴파일언어와 인터프리터언어를 알기 쉽게 설명을 해보자면,

일종의 번역과정이라고 생각하면 도움이 될 것이다.

반응형

 

 

1) 컴파일 언어(영화 번역)

마블이나 디즈니 같은 유명한 영화사의 작품들을 보기 위해 영어부터 공부하신적이 있으신가요?

대부분은 자막이나 더빙 같은 번역이라는 과정을 통해서 

영화를 쉽게 보고 같은 재미와 감동을 느낄 수 있었을 거라 생각합니다.

번역이라는 과정을 보면

원작(영어) > 번역 > 번역본(한글 등)으로 번역되어

한글만 할 줄 알아도 영화를 보는데 어려움을 가지지 않게 되는데,

그럼 '이런 번역을 하시는 분들은 어떻게 번역을 했을까?' 라는 생각을 해본적이 있을까?

아마 영화의 처음 부터 끝까지 영화를 보면서 상황이나 분위기 등을 고려하며 

번역될 캐릭어의 성향이나 성격등에 맞게

말투나 어감, 단어 등을 선택한 최선의 방식을 택했을 거라 생각합니다.

 

프로그래밍언어도 '언어'라는 단어를 쓰는 만큼 

단순한 정보 전달의 의미만으로도 생각할 수 있는데

(*사람이 일반적으로 쓰는 언어를 자연어라 부르고,

컴퓨터가 쓰는 0과 1로 된 언어를 기계어라고 부릅니다.)

사람이 원하는 동작(명령)을 컴퓨터에게 시키기 위해서

사람과 컴퓨터(기계)간의 번역 과정을 진행합니다.

 

 

영화 번역과 같이 처음부터 전체를 다 확인하고 컴퓨터가 사용할 기계어로 번경해주는 방식을

프로그래밍 언어에서는 컴파일 언어라고 합니다.

 

C나 C++, 자바 같은 언어들이 여기에 해당 되고,

위의 영화 번역의 예시처럼 전체를 둘러보는 방식인 만큼

코드를 실행하기 전에 전체코드를 컴파일러를 통해 기계어로 번역하는 구조입니다.
기계어로 번역이 된 만큼 빠른 속도와 최적화된 코드가 장점인 반면
반대로 인터프리터언어에 비해 복잡하고, 

특정 운영체제나 하드웨어에만 동작 가능한 상태로 변환되기 때문에(종속성) 

다른 구성으로의 이식성이 떨어진다는 단점을 가지고 있습니다.

 

2) 인터프리터 언어(동시번역)

그럼 우리가 배울 파이썬 같은 인터프린터 언어는 어떤 번역인까?

인터뷰나 회의, 연설 등에서 이뤄지는 동시번역(실시간번역)의 느낌으로 이해하면 좋을 것 같습니다.

연설자가 한 문장을 이야기 하면 통역사가 한 문장을 전달해주고,

다음 문장을 이야기하면 다시 다음 문장을 번역해 주는 느낌입니다.

그러다 보니 작성한 코딩도 바로 실행하여 진행과정을 바로 확인할 수 있기 때문에
개발 및 디버깅 과정이 컴파일 언어 대비 빠르고 간편합니다.
하지만, 컴파일 언어와 비교대상인 만큼 컴파일 언어의 장점이 인터프린터언어의 단점이 되기도 합니다. 

속도가 느리고, 성능이 떨어지는 등의 특징입니다.

(*하지만 느린 속도도 사람과는 비교할 수 없는 연산속도입니다.....)

그래서 속도나 성능등에 민감한 HW를 직접 제어하는 분야보다는 다른 분야에서 더 적합합니다.

 

특징-2, 고급언어

먼저 오해가 없길 바라며,

저급언어라고 해서 고급언어보다 하위언어라는 뜻이 절대 아니다라는 것입니다.

 

위에서 컴퓨터가 인식할 수 있는 언어를 기계어라고 부른다는 언급을 했는데,

기계어와 사람이 쓰는 언어(자연어) 사이에 수많은 프로그래밍 언어들이 있다.

각각의 언어는 기계어에 가까울수록 저급 언어,

자연어에 가까울수록 고급언어라고 구분한다.

 

좀 더 자세히 내용을 설명하면,

기계는 0과 1로 값을 구별한다는 말을 많이 들어보았을 것이다.

그럼 01010110001010 이라는 것을 보면 사람들은 이게 무슨뜻인지 알 수 없다는 뜻과도 동일하다.

기계, 그것도 특정 기계에서만 인식하는 언어 일 수 있는데,

이런 언어와 반대로 사람이 봤을 때 

쉽게 읽고 이해할 수 있는(가독성이 뛰어난) 언어를 고급언어라고 한다.

C나 C++, 파이썬 등이 모두 고급 언어에 속하며

특히나 파이썬은 '들여쓰기' 문법을 중요시하기 때문에

깔끔하게 정렬된 라인들이 가독성이 더 좋아보이게 한다.

 

 

특징-3, 쉬운 문법

파이썬은 띄어쓰기 4칸('    ')을 사용한 들여쓰기를 통해 명령어의 단위를 구분 짓는다.

# 입력 받은 나이를 기준으로 성인인지를 출력하는 print문

input_age = int(input('나이를 입력하세요. : '))

if input_age > 18:
    print('당신은 성인입니다.')
else:
    print('당신은 미성년자입니다.')

위에서 사용한 코드를 아직 이해할 필요는 없다.

단지, print 앞에 띄어진 띄어쓰기(4칸)이 단순히 보기 좋은 정렬의 의미가 아니라

if 문이라는 조건문을 사용할 때, 하위 코드들을 실행하기 위한

문법에 기반한 정렬이라는 것이다.

해당 들여쓰기가 달라지면 결과도 달라지거나 오류가 발생한다.

위에서 잠시 언급한대로 들여쓰기에 대해 엄격하다 보니,

사람이 보기에 가독성이 뛰어나다는 장점을 가지고,

초심자도 배우기 쉬운 언어로 꼽히는 이유가 되기도 한다.

 

 

특징-4,  커뮤니티 

사용자가 많다는건 영역을 불구하고 많은 도움이된다.

같은 가격의 안마기를 구매하는데,

A사의 제품은 20만명이 넘는 구매자와 제품블로그가 있는 반면

B사의 제품은 200여명의 구매자만 있고 제품블로그 등을 찾아볼 수 없다면

제품 구매 후, 나에게 맞는 설정을 하기에 A사 제품이 더 편리한건 당연한 사실이다.

 

아래는 TIOBE라는 회사의 2023년 5월 프로그래밍 언어 순위이다.

TIOBE는 소프트웨어 사용성과 소스 코드의 품질을 검사, 관리하는 회사인데

해당 회사에서 인기 있는 언어에 대한 순위를 평가한 결과

파이썬은 2022년에 이어 부동의 1위의 모습을 보여준다.

 

그만큼 인기가 있고, 커뮤니티가 활성화 되어 있기 때문에

원하는 정보나 Error 요소를 해결하기 위한 지식을 얻기도

내가 개발하고자 하는 코드와 유사한 코드를 이용하기도 용이하다.

 

여기까지가 대략적인 파이썬의 특징이다.

좀 더 자세한 이야기는 강의를 진행하며 보완해가도록 하겠다.

 

Life is too short, You need Python

파이썬을 배우다 보면 정말 잘만든 문구라는 생각이 절로 들것이다!!

 

 

+ 주석

 - 주석이란 프로그램의 동작과는 무관하게 코드내에 코멘트를 남겨 놓는 것을 말한다.

 - 다른 개발자와의 정보 전달용으로도 사용되지만,

   실제 여러건의 개발을 진행하거나, 꽤 오랜 시간이 지나 해당 프로젝트의 코드를 본인이 수정하려 할 때도

   해당 변수나 함수가 어떤 기능을 하는지 확인할 수 있도록 자세히 적어두는 편이 좋다.

   (*주석을 작성하지 않을 경우, 코드 한 줄 수정을 위해 코드 전체를 리뷰해야 하는 불상사가 생긴다....ㅎㄷㄷ)

 

 - 사용 방법은 2가지가 있는데, 한줄만 주석처리하는 방법과 여러줄을 주석처리하는 방법이다.

1) 한 줄 주석처리

print('결과 출력 1')
#print('결과 출력 2') 주석 처리 위치에 따라 해당 행은 전체가 출력되지 않습니다.
print('결과 출력 3')
print('결과 출력 4')
print('결과 출력 5') # 주석 처리 위치에 따라 해당 행은 주석만 출력되지 않습니다.

한 줄 주석처리는 '#' 을 이용하여 처리할 수 있는데,

해당 코드를 실행하게 되면, 

'#'의 위치에 따라 코드 전체가 실행되지 않거나(2 Line),

코드는 실행되나 코멘트만 주석처리하여(5 Line) 해당 기능에 대한 설명을 덧붙일 수 있다.

 

2) 여러 줄 주석처리

print('결과 출력 1')
print('결과 출력 2')
#주석 처리 위치에 따라 아래의 행들은 출력되지 않습니다.
'''
print('결과 출력 3')
print('결과 출력 4')
'''
#주석 처리 위치에 따라 아래의 행부터 출력이 됩니다.
print('결과 출력 5')

여러 줄 주석처리는 작은 따옴표 3개(''') 또는 큰 따옴표 3개(""")를 사용하여 처리할 수 있다.

 

반응형

'Python > 기초 과정' 카테고리의 다른 글

04 파이썬 문자형 특징2  (0) 2023.06.10
03 파이썬 문자형 특징1  (1) 2023.06.10
02. 파이썬 자료형  (2) 2023.06.09
01. 파이썬 변수편  (0) 2023.06.06
파이썬 코딩 시작(코딩 보다 조금 앞선 intro)  (0) 2023.06.06