티스토리 뷰
1. 변수란 무엇일까?
변수란 쉽게 설명해서 무언가를 담는 공간이라고 생각하면 된다.
print(100+200)
이렇게 print하여 300이라는 값을 뽑아낼수도 있겠지만 만약 저 안에 100과 200의 값을 각각 저장하여 하고 싶다면?
a = 100
b = 200
print(a+b)
이렇게 할수 있을 것이다. 즉 a라는 변수안에 100의 값을 담았고 b라는 변수안에 200이라는 값을 담았다.
변수명은 사용자가 임의로 정하면 된다. 내가 지금은 변수명을 각각 a와 b로 정했지만 뭐 변수명을 각각 bcd abc라고 해도 전혀 문제 될 건 없다. 하지만 앞서 얘기했던 예약어의 이름들은 피하는게 좋겠다.
a가 곧 100 , 그리고 b가 곧 200이라는 뜻을 내포한다. 그래서 print 함수를 이용하여 a+b를 했을시에 300이라는 값이 도출될 것 이다. 변수의 개념은 가장 기초적인 개념이지만 그렇기에 정말 중요하다.
번외로 응용버전을 말해볼까한다.
a = 100
만약 이렇게 있다고 한다면 a 안에 있는 100이란 값은 따로 저장하고 싶고
a의 값은 변경을 하고 싶다. 이럴땐 어떻게 해야할까??
b = a #b변수에 a변수의 값을 복사해주었다.
a = 10 #a변수의 값을 변경하였다
답은 간단하다. b라는 변수를 새로 생성하여 이곳에 a의 변수값을 복사해주고
기존 a 변수에서는 값을 변경하면 된다.
코딩을 정말 처음 입문했을때 이 개념을 들었을때 이해가 정말 안갔다.
하지만 하다보면 깨달음이 올 것 이다.
2. 주소 확인하기
저렇게 변수에 값을 담게 되면 변수는 고유의 주소를 갖게 된다. 예를 들어보자
a = 100
a = 100 이라고 하여 a라는 변수명에 100이라는 값을 담았다.
그렇다면 컴퓨터 내에 있는 방대한 메모리들 속 어딘가에 a = 100이라는 "데이터"를 품고 있을것이다.
메모리 어디에 있는지는 모른다. 하지만 알수있는 방법이 있다.
print(id(a))
바로 id라는 예약어를 사용하면 알수있다. id는 말그대로 해당 변수의 주소를 알려준다.
이런식으로 말이다. 2431449501008에 "a = 100"이 저장되어있다고 알려준다.
id라는 함수는 "컴퓨터야 이 친구가 어디 사니?"라고 물어본다고 생각하면 된다.
쉽게 다시 설명하면 id("사재원")이라고 한다면 사재원은 어느구 어느동 몇번지 사는 친구니? 라고 물어보는 것과 같다.
print로 이들을 감싼 이유는 당연한 이유지만 출력하기 위해서다.
id(a)만 했다면 아무 값이 출력되지 않아 내가 a의 주소값을 볼수없기 떄문에 볼수있게끔 print 함수로 id(a)를 감싸주어 출력했다.
그렇다면 응용으로...
a = 100 #a라는 변수에 100을 넣어줌
b = a #b라는 변수에 a변수를 함께 공유함
#a,b 각각 변수의 주소값 출력
print(id(a))
print(id(b))
이렇게 했을때 주소값이 어떻게 나올까??
a와 b의 주소값이 동일하게 나온다. 10이라는 값을 함께 공유하고 있기 때문에
a = 100
b = 100
print(id(a))
print(id(b))
번외로 a변수에 100을 넣어주고 b변수에 똑같이 100을 넣어줬을 경우에도
id값이 같게 나온다. 왜 그럴까? 파이썬은 메모리를 효율적으로 사용하게끔 디자인되어 있기 때문에
같은 변수값이라면 다른 변수명이어도 주소를 함께 사용한다.
3. 자료형 확인
자바 c언어 파이썬 모두 자료형의 개념이 있다. 자료형이란 쉽게 말해 형태를 뜻한다.
자료형은 4가지의 형태가 존재한다.
첫번째 int형 : 정수를 뜻한다.
두번째 float형 : 실수를 뜻한다.
세번째 str형 : 문자를 뜻한다.
네번째 bool형 : True or false 를 뜻한다.
이것 또한 형태를 확인해볼수있는 방법이 있다.
바로 type 함수를 이용해보는 것이다.
a = 100 #int형
b = 10.1 #float형
c = "사재원" #str형 문자는 따옴표로 감싸주어야 에러가 나지않는다.
d = True #bool형
print(type(a))
print(type(b))
print(type(c))
print(type(d))
위에 설명대로 정수면은 int형 실수면은 float형 ....위 개념이 숙지가 된다면 굳이 확인을 안해도 무슨 자료형인지 파악이 가능하겠지만 굳이 확인해보고 싶다하면 type이라는 함수를 사용하면 된다.
위 id함수와 마찬가지로 예를 들어 설명하면 type(사재원) => "컴퓨터야 사재원은 무슨 형태이니? 사람이니? 강아지이니? 고양이니?" 라고 물어보는 것과 같다.
프로그램을 돌려보면 이렇게 나올 것이다. 내가 말한대로 차례대로 int , float , str, bool 형태가 나온다.
너무나도 뻔한 얘기지만 자료형 개념은 기초중에 기초지만 그만큼 매우매우 중요하니 꼭 숙지를 해야한다.
감사합니다
'프로그래밍 언어 복습 > 파이썬' 카테고리의 다른 글
#6 파이썬 변수교체 + 패킹할당 (0) | 2022.05.11 |
---|---|
#5 파이썬 이스케이프문자 + sep함수사용 (0) | 2022.05.11 |
#4 파이썬 연산자 종류 4가지 (0) | 2022.05.11 |
#3 파이썬 예약어 확인하는 방법 (0) | 2022.05.11 |
#1 파이썬 출력해보기 (0) | 2022.05.11 |