티스토리 뷰

일상코딩/노트

Python : 용어, 타입

코딩애벌레 2024. 1. 15. 08:39
프로그래밍이란 ? 

 

사전적 의미로 '일의 순서가 정해져 있고 그 흐름대로 일을 진행하는 것' 이다. 하지만 우린 개발자니 표현을 SoftWare의 관점으로 바꾸어 표현하면 '어떠한 언어로 짜여진 명령어들을 순서대로 진행하는것' 이다. 예를들어 나는 파이썬을 배우고 있으니 파이썬으로 코드를 짜서 해당하는 명령어들을 진행하라고 시키는 것이며, 이 행동 모두가 프로그래'밍'을 의미한다. 

 

따라서 프로그램(program)은 명령어들의 집합체라고 볼 수 있다.

실생활 예시

 

프로그래밍의 핵심

 

새 연산을 정의하고 조합해서 개발자들이 '문제를 해결' 하기 위한 작업을 수행하는 것이다. 위의 예시를 가져오면, 회식 장소까지 가는 곳을 어떤 사람은 좌 / 우 / 직진만 적어서 끝낼 수 있고, 꼼꼼한 사람은 정확한 거리 수치까지 넣을 수 있으며, 최단거리 혹은 큰 길 우선으로 길을 적어 줄 수도 있다. 이러한 모든 작업이 프로그래밍이라고 볼 수 있는데 개발자들은 이러한 문제를 어떻게 효율적으로 해결할 수 있는지 고민해가며 프로그램 실행이 쉽게 하는 것이 핵심이다.

내 첫 프로그래밍 언어 (마크는 두마리의 뱀)

 

코딩을 잘 모르는 사람도 파이썬이라는 단어는 한번 쯤은 들었을 것이다. (스타크래프트 게임에서도 나온다) 프로그래밍  언어들 중 가장 진입 장벽이 낮은 특징을 가지고 있다.

  • 사람이 쓰는 언어와 가장 비슷하며 간결하고 읽기 쉬운 문법
  • 다양한 응용 분야(현재 급 부상하고있는 AI 관련 직무 역시 파이썬을 사용)
  • 세계적인 규모의 풍부한 온라인 포럼 및 커뮤니티 생태계

그럼 왜 언어가 필요한 것인가? 라는 의문이 들 수 있다. 기본적으로 컴퓨터는 기계어(0과 1로 이루어진)로 소통하기 때문에 사람이 기계어를 직접 작성하기 어려울 것이다. 숫자조차도 표현하기 어려웠는데 이 많은 데이터들을 어떻게 직접 바꾸겠는가? 언어가 불일치하는 컴퓨터와 소통하는 프로그램이 있는 것이다. 쉽게 말하면 아랍인과 대화하기 위한 번역기라고 보면 편할 것 같다. 이를 '파이썬 인터프리터라고 한다. 

 


파이썬 용어

표현 Expression

:  값, 변수, 연산자 등을 조합하여 계산되고 결과를 내는 전반적인 코드 구조를 의미한다.

 

문장 Statement

: sentence가 아니고 statement인데 직역은 진술로 통한다. 어떻게 실행할지 동작을 기술하는 코드이며 한 단어보다는 조건문, 반복문, 함수를 정의한 덩어리들이 하나의 셋트로 이루어져있다. 여러 표현식들이 모여 문장을 이루므로 표현은 문장에 포함된다고 할 수 있다.

 

평가 Evaluate

: 표현이나 문장을 실행하고 계산 값을 결정하는 과정을 의미하는데, 어떻게 프로그램이 동작할지를 앞서 설명한 표현식과 문장을 순서대로 평가하는 것이다.

 

타입

: 파이썬 내부의 값들이 어떤 종류의 데이터인지, 종류에따라 해석하고 처리해야하는지 정의를 나눈 것

내 몸무게랑 키다.(TMI)

 

타입은 위의 그림과 같이 값(피연산자)와 값에 적용할 수 있는 연산자 2가지가 있다.

값과 연산자들이 내부에서 또 나뉘게 되는데, 아래 예시들이 있다. 실제로는 이거보다 더 자세하게 많지만 차차 다뤄보도록 하겠다.

 

값 (Values)

: 값은 프로그램에서 조작하고 저장할 수 있는 기본적인 데이터.

정수 (integer): `42`, `-10` 

부동 소수점 수 (float): `3.14`, `-0.5`

문자열 (string): `"Hello, World!"`, `'Python'`

불린 (boolean): `True`, `False`

배열, 순서 (Sequence Types): `list`, `tuple`, `range`

집합 (Set): `set`

 

연산자(Operators)

: 연산자는 값을 조작하고 조합하는 데 사용함

#산술연산자
a + b 	#(덧셈)
a - b	#(뺄셈)
- a	#(음수 부호)
a * b 	#(곱셈)
a / b 	#(나눗셈)
a // b 	#(나눈 몫)
a % b 	#(나눈 나머지)
a ** b 	#(거듭제곱)

우선순위는 우리가 흔히 알고있는 사칙연산과 순서가 동일하고 ** -> - (음수부호) -> *, /, //, % -> +, - 이다. 또한 음수와 뺄셈의 기호가 같고 실제로 계산할 때 괄호가 어느 부분에 있는지에 따라 계산 결과가 달라질 수 있기때문에 주의해야한다.

 

변수 (Variables)

: 변수는 값을 저장하고 참조하기 위한 식별자. 이 부분에서는 수학과 다른 부분이 명확하게 있다. '참조' 라는 것은 같다라고 표현하기 보다는 바라본다, 할당한다의 의미가 강하다. 앞서 다른부분이라고 했는데 " = " 표시는 1 = 1 과 같이 '좌항과 우항이 같다'라고 표현하는게 일반적이지만 개발자의 눈에는 할당. 즉 같은 것이아니라 우항에서 좌항에 '넣어줬다' 라고 표현한다.

x = 10  # 해당 형식을 할당문이라고 하며 변수 x에 정수 10을 할당한다

name = "Alice"  # 변수 name에 문자열 "Alice"를 할당한다

pi = 3.14  # 변수 pi에 부동 소수점 수 3.14를 할당한다

is_student = True  # 변수 is_student에 불린 값 True를 할당한다

 

변수명 규칙(pep8)

  • 영문 알파벳, 언더스코어(_) : snake_case, 숫자로만 구성하는 것이 일반적
  • 숫자로 시작할 수 없음 (초반에 실수 많이했음..)
  • 대소문자를 구분
  • 파이썬 내부의 내장함수, 내부 예약어는 사용하지 않는다
['False', 'None', 'True', '__peg_parser__', 'and', 'as', 'assert', 'async', 'await', 'break',
'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global',
'if', 'import', 'in', 'is', 'lambda', 'nonlocla', 'not', 'or', 'pass', 'raise', 'return', 'try',
'while', 'with', 'yield']

 

다음에 이어서...

728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함