안녕하세요! 오늘은 Python의 변수 선언과 초기화에 대해서 알아보겠습니다.
'변수'는 계속 변하는 값이면서 그 값을 저장하는 공간을 말합니다. 그러니 하나의 상자라고 생각하시면 될 것 같습니다.
이런 식으로 변수라는 상자에 값을 넣어줍니다. 어떤 값을 넣느냐에 따라서 변수의 값이 변하겠죠??
먼저 파이썬의 변수 선언과 초기화를 알기 전에 다른 언어를 먼저 살펴보도록 하겠습니다. 그러면 왜 파이썬이 직관적이고 쉬운지 답이 나오기 때문입니다.
C나 C++, JAVA 등 모든 언어에는 자료형이라는 게 존재합니다. C의 자료형에 대해서 알아보겠습니다.
자료형 | 크기 | |
정수형 | char | 1바이트 |
short | 2바이트 | |
int | 4바이트 | |
long | 4바이트 | |
long long | 8바이트 | |
실수형 | float | 4바이트 |
double | 8바이트 | |
long double | 8바이트 이상. |
이런 식으로 정수형, 실수형이 나눠지고 그 안에 여러 가지 자료형과 크기가 나와있습니다. 그 이유는 각 데이터의 표현 방식이 다르기 때문입니다.
정수형과 실수는 아실 거라 믿습니다 그리고 char 즉 문자형을 나타내는 자료형은 ' ' 작은따옴표로 표현합니다.
string은(C에는 string이라는 자료형이 없어서 위에 있는 표에는 없습니다) 문자열을 표현합니다.
char 은 character 약어로 숫자 0 ~ 9, 알바 벳의 대소문자, 그 외 특수 기호 한 글자를 표현하는 단위라고 생각하시면 됩니다.
String 은 그런 문자들의 집합이라고 생각하시면 됩니다
그렇다면 C 언어의 경우 어떤 식으로 변수를 만들고 데이터를 출력할까요? 다음 소스코드를 보겠습니다.
#include <stdio.h>
int main()
{
int a = 5;
float b = 5.5;
printf("%d, %f", a, b);
return 0;
}
위의 소스코드를 보면
int는 정수형 데이터를 넣을 수 있는 자료형입니다. 그래서 a(변수명)라는 상자에 5라는 데이터를 넣었고요,
float는 실수형 데이터를 넣을 수 있는 자료형입니다. 그래서 b(변수명)라는 상자에 5.5라는 데이터를 넣었습니다.
그리고 출력을 합니다 printf("%d, %f", a, b); 이 구문을 살펴보자면
- printf의 f는 'formatted' 형식화된 이라는 뜻을 가지고 있습니다. 규격화된 입출력 정보를 말합니다.
- " %d, %f " 는 쌍따옴표 안에 있는 %d는 정수를 %f는 실수를 나타냅니다
- , 콤마는 printf라는 함수에 첫 번째 인자 값("%d,"%f")를 넣었고 이제, 데이터를 넣는다는 뜻입니다.
- a와 b 두 개는 순서적으로 들어가게 되는데 a는 %d가 %f는 b가 들어가게 됩니다.
출력 값은? 5 5.5 두 개가 출력이 됩니다.
네 그렇습니다. 처음 하는 사람들이 이 구문을 본다면 쉽게 다가오지 않을 것입니다. 저도 이걸 말로 설명한다는 게 생각보다 어렵다는 게 느껴지네요! 자 그럼 파이썬을 확인하도록 하겠습니다.
a = 5
b = 5.5
print(a,b)
네? 끝이냐고요? 맞습니다 끝입니다. 출력 결과는 5 5.5 가 나옵니다! 정말 간단하죠?
파이썬은 데이터 타입을 자동적으로 추론합니다. 그러니 일일이 적을 필요가 없습니다. 이런 부분에서 많은 분들이 처음 파이썬을 접한다고 생각합니다. 엄청 직관적이죠?
이런 식으로도 표현이 가능합니다.
a, b = 5, 5.5
print(a, b)
한 줄로 나타내 가독성을 올리는 방법입니다. 개발은 혼자 하는 게 아니기 때문에(물론 혼자도 가능합니다) 다른 사람이 봐도 알 수 있는 변수명과 가독성을 올리면 더 좋고 커뮤니케이션이 가능하겠죠?
a = "Hello"
b = "World!"
c = "35"
d = 35
e = b
result = a + b
d = 5
print(a, b, c, d, e, result)
네 마지막 코드가 되겠습니다. 이 소스코드의 출력 값을 어떻게 될까요? 그리고 C는 어떤 형일까요? 제 블로그를 보시고 답을 댓글로 적어주세요 :)
긴 글 읽어주셔서 감사합니다! : )
'언어 공부 > Python' 카테고리의 다른 글
[Python] 5. 리스트 연산과 수정 (0) | 2021.01.16 |
---|---|
[Python] 04. 값의 집합 리스트 (0) | 2021.01.15 |
[Python] 03. 기본적인 자료형과 연산자 (0) | 2019.08.30 |
[Python] 01. 왜 파이썬을 사용하는가? (0) | 2019.08.28 |
댓글