-변수 : 변할 수 있음/ 상수 : 항상 같은 값을 갖고 있음
name = "일"
name = "이"
이렇게 순서대로 대입할 경우, print(name)의 결과값으로 출력되는 값은 가장 마지막에 대입된 "이"다.
name = "일"
print(name)
name = "이"
print(name)
다음의 경우 같은 print(name)의 값이여도 위에는 대입된 "일"이 출력되고, 밑에는 "이"가 출력된다.
-변수에 글자를 대입하는 경우에는 ""(double quotes)를 사용하여 대입하지만, 숫자의 경우 ""가 필요하지 않다.
10을 대입하는 경우
number1 = 10 ;
number1 = 10 과 number1 = "10"의 차이는 무엇??
전자는 숫자 10이 대입된 것이고, 후자는 글자 10이 대입된 것이다.
출력하면 결과는 동일하게 10이지만, 두 10의 타입은 엄연히 다르다.
굉장히 중요한 부분!!!!!
왜 중요하냐? 다음의 연산을 통하면 왜 이게 중요한지 알 수 있다.
number1 = 10
number2 = 20
number3 = number1 + number2
print(number3)의 결과는 10+20=30이다.
그러나
number1 = "10"
number2 = "20"
number3 = number1 + number2
print(number3)의 결과는? 1020이다.
왜냐하면 위의 10과 20은 글자로 취급했기에, 글자간 더하기는 그냥 연결해서 출력된다.
-콤마를 사용하면 변수를 한 줄에 한번에 출력할 수 있다.
ex)
number1 = 10
number2 = 20
number3 = number1 + number2
print(number1, number2, number3)의 경우
10 20 30이 출력된다.
-위에서 언급했듯이 변수의 자료형이 굉장히 중요하다. 숫자냐 문자냐에 따라 결과값이 매우 달라지기 때문!
변수의 자료형(data type)
└정수형(integer)
└실수형(float)
└문자형(string)
└불린형(boolean)
정수형(integer) : 양수, 0, 음수 (소수점이 없음)
실수형(float) : 소수점을 포함하는 숫자
문자형(string) : 여러개의 글자를 갖는 데이터
불린형(boolean) : True와 False를 갖는 데이터(T와 F가 대문자인 것이 중요!! 코딩에서는 대문자도 중요하다고 함.)
-정수형 변수 (integer)
num1 = 10
num2 = 100
num3 = num1 - num2
print(num3)
결과값 : -90
-실수형 변수 (float)
num4 = 0.123
num5 = 0.99
num6 = num4 + num5
print(num6)
결과값 : 1.113
-문자형 변수 (string)
str1 = "첫번째"
str2 = "두번째"
str3 = str1 + str2
print(str3)
결과값 : 첫번째두번째(문자형의 더하기는 연결이 됨)
-불린형 변수 (boolean)
bool1 = True
bool2 = False
#첫 글자를 대문자로 True False로 써줘야 됨.대소문자도 중요함
print(bool1)
print(bool2)
결과값 :
True
False
-연산의 기본은 사칙연산 +, -, *, /
print()함수 안에 변수와 연산기호를 같이 넣어서 출력할 수 있다.
num1 = 5
num2 = 3
print(num1+num2) 다른 기호도 동일하다.
-난생처음 보는 //, %, ** 기호의 기능
-몫 연산 기호 : //
print(num1//num2)
출력값은 1. 5에서 3을 나누면 1번 나뉘고 2의 나머지를 갖는다. 나머지를 버리는 기호라고 생각하면 됨.
-나머지 연산 기호 : %
print(num1%num2)
출력값은 2.
-제곱 연산 기호
print(num1num2)
출력값은 125(5의 3승)
-대입 연산자의 기호 +=, -=, *=, /=
number1 = 10
number2 = 20
number2 += number1
└다음을 풀이하자면, number2 = number2 + number1이다. 즉 넘버2와 넘버1에 대입된 값을 더하고 그 값을 다시 넘버2에 대입한다는 것이다.
저번 사전교육 때 수학에서의 등호와 프로그래밍의 등호는 차이가 있다고 했는데, 위의 경우가 딱 그렇다. number2 = number2 + number1는 수학에서는 절대 성립할 수 없는 수식이다. 그러나 여기서는 대입이라는 개념이라서 가능하다.
-=, *=, /=도 전부 동일한 의미를 갖는다.