▣안녕하세요 ^^
저번 시간 숙제 다 해보셨나요??
다 해보셨을꺼라 생각하고
오늘은 변수에 대해 배워보겠습니다.
▣ 변수란 무엇일까요?
사전적 의미로는 많은 의미가 나오는데
변화하는 수, 데이터를 저장하는 메모리, 상자 등등으로 여러 표현으로 사전에 나와있습니다.
▣ 저에 생각으로 정의하면
변수는 우리가 지정해준 데이터를 저장해주는 상자라고 생각하시면 됩니다.
위에 그림처럼요.
우리가 게임을 만들 때에도
점수, 세이브, 플레이어 HP, 파워, 스킬게이지 등등에
데이터 값을 저장합니다.
▣ 그럼 이걸 어떻게 만들까요?
우선 변수에 이름을 정해줘야 합니다.
이름은 왜 정할까요?
제가 변수는 상자라고 했죠?
제가 무언가 상자에 넣고 뚜껑을 닫았다고 생각해 봅시다.
그럼 여러분들이 나중에 저 상자 겉에만 봤을 때
무엇이 들어있는지 알 수 있나요?
네 알 수 없습니다.
그렇기 때문에 안에 무엇이 들어있는지를 구분하기 위해서
이름을 적어줘야 합니다.
그래서 변수를 만들 때에도 먼저 이름을 정한다고 생각하시면 됩니다.
그럼 한번 만들어볼까요?
▣ 이렇게 number라는 변수 이름을 정해주고,
10을 대입해주었습니다.
그리고 저번장에서 배웠던 print함수를 이용해서
number 변수 이름을 넣어서 출력했더니
안에 있는 10이라는 값이 나왔습니다.
이렇게 만드시면 됩니다라고 끝내면 좋겠지만,
중요한 사실 몇 가지가 있습니다.
이건 꼭 기억해주세요.
▣ 첫 번째 = 기호는 우리가 알던 같다는 의미에 기호가 아닌,
대입 연산자라는 연산기호입니다.
오른쪽에 있는 값을 왼쪽 변수에 대입해라
넣어라는 의미라고 생각하시면 됩니다.
그럼 10이라는 값을 number라는 변수 상자에 넣겠죠?
▣ 두 번째 number는 변수에 이름이었죠?
변수 이름을 print로 출력하면 결과가 무엇이 나왔죠?
변수 이름이 출력되는 게 아니라,
변수 안에 있는 대입된 값이 출력되었습니다.
이 부분은 너무 중요합니다.
변수 이름 자체는 무엇을 의미한다?
안에 있는 값을 의미한다입니다.!!!
▣ 두 가지 꼭 꼭 기억해주세요.
= 대입 연산자, 연산자라는 것 기억해주세요.
변수 이름 자체는 값을 의미한다라는 것 기억해주세요.
이걸 쉽게 쉽게 그냥 변수는 이렇게 만들고 출력하는 거야 라고
끝내시면 안 됩니다 ^^;;
▣ 또 진짜 마지막으로 변수에 이름을 정하는 건 너무 중요합니다.
분명 저랑 다르게 number가 아닌 a, b, c 이렇게 만드신 분들이 있을 거라 생각합니다.
제가 변수 이름은 머라고 했죠?
네 그 안에 들어 있는 내용이 어떤 건지를 표기하기 위한 식별자라고 했습니다.
그렇기 때문에 변수 이름을 정하는 게 너무 중요합니다.
지금부터 훈련을 하셔야 합니다.
예를 들어 제가 게임을 만들고 있는데, playerHP라는 변수를 만들어야 하는데
귀찮아서 ph라고 정했다고 생각해봅시다.
그럼 여러분들은 이걸 보면 playerHP라고 구분할 수 있나요?
네 모릅니다.
나중에 팀들이 이름을 그렇게 하자라고 정한 게 아닌 이상 모릅니다.
그러니 조금 번거롭더라도,
변수 이름을 지정하는 것 지금부터 고민해주세요.
나중에 큰 도움이 됩니다.
▣ 그리고 c언어 하시는 분은 먼가 허전하죠?
네 자료형을 적지 않고 만들어도
파이썬에서 자동으로 int형으로
처음 대입한 값에 따라 자료형을 정해줍니다.
이게 편리한 거 같지만,
우리 c언어를 먼저 공부하신 분은 조금 어색합니다. ^^;;
자료형에 관해서는 다음장에서 진행하고
우선 이렇게 변수를 만들 수 있다고만 기억해주세요.
▣ 자 이렇게 변수를 한꺼번에 여러 개 만들 수도 있습니다.
이걸 선언 및 정의라고 하기도 합니다.
선언은 이게 있어!!!라고 선언해주는 것이고,
정의는 선언한 그 변수에 값을 대입해주는 걸 정의라고 생각하시면 됩니다.
▣ 변수 여러 개를 , 콤마로 구분하고
= 대입 연산자를 넣어서 변수 이름 수와 동일하게 값도 콤바로 대입해서 구분해줍니다.
당연히 변수에 수와 그 안에 대입될 값에 수가 다르면 안 되겠죠?
그럼 오류가 납니다.
그런 다음에 print함수를 이용해서 하나하나 출력했습니다.
▣ 직접 해보세요!!!
제가 보여드리는 모든 건 숙제입니다.
꼭 실습하셔야 합니다.
▣ 자 이번에는 변수 하나를 만들고,
print 해서 문자열과 함께 출력하는 걸 해보겠습니다.
나중에 함수를 배우면 아시겠지만,
print() 괄호 안에 매개 변수값을 구분하려면 , 콤마로 구분해줘야 합니다.
문자열은 저번장에서 이야기한 것처럼
이게 문자다라는 것을 컴퓨터한테 알려줘야 하기 때문에
"큰 따옴표나 '작은따옴표를 꼭 붙어주셔야 합니다.
출력을 해보면 변수 값과 문자가 나오는 걸 확인할 수 있습니다.
▣ 직접 원하시는 문자를 입력해서,
변수랑 함께 출력해주세요.
콤마로 구분하면 여러 개에 문자열을 계속 출력할 수도 있습니다.
▣ 이건 나중에 또 배우겠지만,
이렇게 "안녕"이라는 문자열에 * 곱하기 3을 하게 되면
안녕이라는 문자가 3개가 출력된 걸 확인할 수 있습니다.
직접 한번 해보세요.
▣ 그리고 이렇게 저번장에서 한 것처럼 연산자를 활용하여 연산도 할 수 있는데
print함수에서 변수에 연산을 해서 이렇게 출력도 할 수 있습니다.
그리고
▣ 자 이번에는 변수와 변수를 연산해서 바로 print함수로 출력했습니다.
▣ 직접 꼭 한 번씩 해보세요.
▣ 자 그리고 이번 실습이 너무 중요한데요,
위에서 처럼 연산할 변수를 다 가지고 와서 print에 넣어서 연산도 할 수 있지만,
변수 하나만 print함수에 넣어서 이렇게 코딩을 깔끔하게 연산에 값만 있는
변수를 넣을 수도 있습니다.
▣ 그런데 여기서도 중요한 한 가지
sum에서 정의할 때 = 대입 연산자를 사용했는데, 그 대입 값을 number + number 2에 더하기 연산이 된 값으로 대입이 됐습니다.
= 과 + 는 연산자입니다.
쉽게 이야기해서 컴퓨터에 연산도 우선순위가 있습니다.
정말 중요합니다.
당연히 여러분들은 그냥 +더하기가 먼저 되겠지?라고 넘어가셨겠지만,
절대 그러시면 안 됩니다.
컴퓨터 연산에도 우선순위가 있습니다.
여기서 컴퓨터가 컴파일 과정에서 하나하나 해석할 때
=, + 을 보고 +가 우선순위가 더 높기 때문에
먼저 +를 하고 그다음에 대입 연산자로 sum안에
변수에 값을 더한 값을 넣었기 때문에
결과가 그렇게 나오는 겁니다.
▣ 꼭 기억해주세요.
연산에 우선순위가 있다는 것 기억해주세요.
그리고 코딩을 짜면서 코딩을 다시 읽는 훈련도 하셔야 합니다.
▣ 자 마지막으로 주석을 만들어보겠습니다.
주석이라는 건 설명글을 의미합니다.
우리가 나중에 3천 줄 5천 줄 코딩을 하게 될 겁니다. 더 많을 수도 있고요.
그런데 우리는 사람인지라 모든 코딩을 기억할 수 없습니다.
그렇기 때문에 이렇게 몇 번째 줄에 어떤 코딩인지 ,
어떤 상황에 코딩인지를 설명글로 남겨줘야
나중에 우리가 코딩을 보더라도 알 수 있습니다.
그럴 때 주석을 사용합니다.
주석을 사용하려면
먼저 한 줄을 주석으로 만들려면
# 기호를 먼저 쓰고 문자들을 쓰면
그 줄이 컴파일을 해도 주석인 줄은 무시하고 넘어가는 걸 확인할 수 있습니다.
그럼 여러 줄은 가능할까요?
▣ 네 가능합니다!!!
"""큰 따옴표 3개를 붙이거나
'''작은따옴표 3개를 주석에 시작과 끝에 붙이면 됩니다.
▣ 꼭 직접 주석을 만들어서 확인해주세요.
▣ 자 오늘은 이렇게 변수, 문자, 연산자 우선순위, 주석에 대해서 배웠습니다.
짧은 내용이자만 중요한 부분을 많이 공부했습니다.
꼭 제가 중요한다라고 한건 꼭 꼭 기억해주시고,
위에 있는 실습 숙제들은 꼭 해보세요.
그리고 코딩을 읽고 해석하는 것 너무 중요합니다.
이 훈련을 하지 않으면
나중에 코딩을 고칠 때 매우 힘들어집니다.
꼭 다시 코딩을 읽는 훈련을 해주세요.
하시다가 질문 있으시거나 궁금하신 사항 아니면 피드백이 필요하신 분은
댓글 남겨주세요.
그럼 다음장에서 뵙겠습니다.
▣ 포기하지 마세요!!! 저도 했습니다!!! 파이팅!!!
'[ Python ] > - 파이썬 문법공부' 카테고리의 다른 글
파이썬 6장(반복문, while문, 중첩while문) (2) | 2020.07.06 |
---|---|
파이썬 5장(조건문, 관계연산자, 논리연산자) (0) | 2020.07.03 |
파이썬 4장(비교연산자, 논리연산자, 연산자, bool형) (0) | 2020.06.22 |
파이썬 3장(문자열, format, 형식, print, 변수, sep, end, 제어문자) (0) | 2020.06.15 |
파이썬 1장(컴파일러, 인터프리터, print, 출력, 함수, 사칙연산) (2) | 2020.06.08 |
댓글