본문 바로가기



개발 도구들/Python

파이썬으로 프로그래밍에 도전하자(2)

이 글의 주요 대상은 이제 프로그래밍에 첫 발을 들여놓는, 프로그래밍의 경험이 없는 분들을 대상으로 합니다.

 

"파이썬으로 프로그래밍에 도전하자" 두 번째 시간입니다.

지난 글에서는 프로그래밍을 시작하고, 또 파이썬을 사용하는 가장 기초적인 내용에 대하여 살펴보았습니다.

 

지난 시간에 a + b 라는 자연수의 덧셈을 처리해 보았습니다.

그런데 데이터에는 여러가지 종류가 있죠.

1, 2, 3... 과 같은 자연수 뿐만 아니라 -1, -2.. 와 같은 음수를 포함한 정수의 개념도 있고.. 0.123, -2.532 외 같은 소수점을 가진 실수도 있습니다.

점점 들어가면 제곱했을때 음수의 값을 가지는 허수를 포함한 복소수라는 것도 있죠.

수치 데이터를 벗어나 a, b, c, d... 가, 나, 다, 라.. 와 같은 문자로 구성된 데이터도 있습니다.

 

이런 다양한 데이터는 어떻게 처리해야 하나요? 라고 물어볼 수 있겠죠.

그냥 사용하시면 됩니다.

다른 프로그래밍 언어와 달리 파이썬은 데이터의 형태를 직접 선언하지 않아도 됩니다.

 

잘 동작하고 있네요.

여기서 한 가지 주의할 점은...

복소수를 사용할 때, 수학에서 사용하는 i 라는 허수부의 표시를 파이썬에서는 i 가 아니라 j 로 표현한다는 점입니다.

그리고 문자열은 어디서부터 어디까지가 원하는 문자열의 데이터인지 표시하기 위하여 '~', "~" 와 같이 따옴표, 또는 쌍따옴표로 묶어서 구분합니다.

 

자.. 이렇게 다양한 데이터의 형태를 쉽게 사용할 수 있다는 것을 알았습니다.

그런데 a, b, c, d, e.... 변수 명이 단조롭죠.

프로그램이 점점 커지고 변수의 이름을 정의한 곳과 변수를 사용한 곳의 거리가 멀어질수록, 그리고 변수의 개수가 많아질수록 헷갈리기 시작합니다.

그래서 변수의 명은 가능하면 쉽게 알아볼 수 있는 단어를 사용하시는 것이 좋습니다.

 

이런 식으로 바꿔볼 수 있겠죠.

변수의 이름은 기억하기 쉽고 구분하기 쉽게 작성하시면 됩니다.

변수의 이름을 정할 때 반드시 따라야 하는 규칙같은 것은 없지만 각 언어에 따라, 또는 팀에 따라 권장하는 형태는 있습니다.

혼자만 작성하고 보고 사용할 코드가 아니라면 언어별, 팀별로 권장하는 규칙을 따라주는 것이 협업에 도움이 되겠죠.

 

다음으로 지금까지 사용해 본 변수들이 하나가 아니라 여러 개가 모여서 구성된 데이터의 형태가 있습니다.

대부분의 프로그래밍 언어에서는 배열, Array 라고 표현하는 것들인데 파이썬에서는 리스트(List)라고 합니다.

사실 배열, Array와 리스트는 조금 다릅니다.

배열은 동일한 형태(실수끼리, 문자열끼리... 등)의 데이터 여러 개가 순서대로 모여 있는 것을 말하지만 파이썬의 List는 꼭 동일한 형태가 아니어도 관계없습니다.

다른 프로그래밍 언어.. 예를 들면 Java와 같은 언어에서의 Collection 이란 것과 비슷하다고 볼 수 있습니다.

리스트의 데이터는 대괄호 [ ] 로 둘러싸서 표시하며 안에 있는 데이터는 콤마( , )로 구분합니다.

 

list_1에는 숫자만, list_2에는 문자열과 문자, list_3에는 숫자, 문자열, 또다른 리스트들이 들어가 있죠.

각각을 출력해보면 다 잘 인식되고, 처리되고 있습니다.

리스트 안의 데이터를 하나씩 지정하고 싶을때는 [x] 와 같은 형태로 사용하시면 됩니다.

[x]에서 x에는 리스트 안의 몇 번째 데이터를 사용할 것인지 지정하는 숫자가 들어가는데 이 때 숫자, 즉 인덱스는 0부터 시작합니다.

리스트 안의 리스트를 지정하여 그 안의 데이터를 사용하려면 한 단계 더 지정해 주시면 됩니다.

print(list_3[4][1]) 의 의미는 list_3 변수에서 0, 1, 2, 3, 4에서 4, 즉 다섯 번째의 값인 ['see', 'you', 'later']를 지정하고, 그 안에서 0, 1 즉 두 번째의 데이터인 'you'를 지정한 것입니다.

이런 식으로 계속해서 사용할 수 있습니다.

 

리스트와 비슷한 것으로 튜플(Tuple)이라는 것이 있는데 리스트와 튜플의 차이는 안에 들어있는 값을 바꿀수 있는지 없는지.. 입니다.

리스트는 안에 들어있는 값을 바꿀 수 있고, 튜플은 바꿀 수 없습니다.

튜플의 데이터는 괄호 ( ) 로 둘러싸서 표시하며 안에 있는 데이터는 콤마( , )로 구분합니다.

 

리스트와 달리 튜플에서는 안에 있는 값을 바꾸려고 하니 오류가 발생하는 것을 확인할 수 있습니다.

 

마지막으로 사전, 딕셔너리(Dictionary)라고 부르는 데이터의 형태가 있습니다.

딕셔너리의 데이터는 중괄호 { } 로 둘러싸서 표시하며 안에 있는 데이터는 콤마( , )로 구분합니다.

그리고 딕셔너리의 데이터는 "키:값"의 형태로 한 쌍의 요소로 구성되어 있습니다.

 

리스트나 튜플과 달리 딕셔너리는 안에 있는 데이터에 순서가 정해져 있지 않습니다.

그래서 "키:값"으로 구성된 데이터 쌍에서 "키"를 [ ] 안에 입력하여 원하는 데이터를 지정하고 사용합니다.

"키:값"의 내용에서 키와 값의 데이터 형태는 정해진 것이 없으니 필요한 대로 사용하시면 됩니다.

그런데 "키"라는 것은 단 하나를 지칭하기 위한 것이니까 여기에 배열같은 것을 지정하시면 안되겠죠.

그리고 리스트와 마찬가지로 딕셔너리도 내부의 값을 바꿀 수 있습니다.

 

여기까지해서 다양한 파이썬의 데이터 형태를 사용하는 방법을 알아보았습니다.

이 외에도 여러가지 형태가 있지만 기본적으로 이 정도 알고 계시면 큰 불편은 없을 것입니다.

더 자세한 내용은 진행하면서 필요할 때 하나씩 다루도록 하겠습니다.

 

다음 글에서는 데이터를 다양하게 처리하기 위한 구문에 대하여 알아보겠습니다.

 

 

 

 

반응형