print(123) # 숫자 상수(정수형)
print(98.6) # 숫자 상수(실수형)
print("Hello World") or print('Hello World')
# 문자열 상수는 ", ' 로 표시
( " 와 ' 안에 있는 모든 것은 문자열로 처리된다.
안에 있는 수가 숫자여도 문자열) ex : "123" , '17.6' => 문자열
x = 12.2
print(x) # 12.2 출력
y = 14
x = 100
print(x) # 100 출력
이해하기 쉽게 아래 그림을 참고.
왜 중요할까? 예를 한 번 들어보자.
# Case1 - 아주 나쁜 예
xiojqwerlkj = 35.0
dpemdnlem = 12.50
rlaxotjs = xiojqwerlkj * dpemdnlem
print(rlaxotjs)
# ...이해가 가능한가요? 저는 모르겠네요..
# Case2 - 나쁜 예
a = 35.0
b = 12.50
c = a * b
print(c)
# 흠... 가볍게 혼자 코딩한다면 괜찮겠지만 다른 사람과 협업한다면 안좋다!
# Case3 - 좋아요!
hours = 35.0 # 시간
rate = 12.50 # 요금
pay = hours * rate # 지불 가격 = 시간 * 요금
print(pay)
# 딱 보면 변수가 뭘 가르키는지 알겠죠?
이와 같이 파이썬은 3가지 케이스를 모두 동일하게 인지하지만 코드를 읽는 사람 입장에서는 세번째 케이스가 가장 이해하기 쉬울 것이다.
대입문은 (=)으로 변수값을 지정 가능.
오른편에 있는 표현의 결과를 왼쪽의 변수에 저장하는 것으로 구성.
ex)
(이해가 쉽게 위의 그림과 색깔을 맞춰 봤습니다.)
오른쪽은 표현식이고, 표현식이 계산이 되면, 결과값은 x에 저장된다.
예를 한 번 들어 보겠습니다.
x = 0.6 # x 라는 변수에 0.6 대입(저장)
x = 3.9 * x * (1 - x)
print(x) # 0.936 출력됨.
#3.9 * 0.6 * (1 - 0.6)
컴퓨터 키보드에 수학 기호가 부족하기 때문에 제한적인 몇 가지의 수리 연산자들을 사용할 수 있다.
아래 표에는 없지만 한가지 추가하자면
// 는 나누기 연산 후 소수점 이하의 수를 버리고, 정수 부분만 구한다.
즉, 몫을 구하는 연산자이다.
우선순위 : 괄호 → 거듭제곱 → 곱셈, 나눗셈 → 덧셈, 뺄셈 → 왼쪽에서 오른쪽
x = 1 + 2 ** 3 / 4 * 5
print(x)
# 결과
11.0
여기서 잠깐! 엥? 왜 int형 끼리 계산했는데 실수형으로 결과가 나온걸까? 이유는 정수 나눗셈은 부동 소수점 즉, 실수형을 반환한다.
예를 들어보면
first = '10'
second = '15'
print(first + second)
# 결과
1015 # '10'과 '15' 문자열을 연결함
파이썬에는 다양한 데이터 타입을 가지고 있다. 파이썬은 우리가 연산하고자 하는 데이터의 타입이 무엇인지 알고 결과를 수행한다. 또한, 데이터의 타입에 따라 동일한 연산자를 사용하더라도 다른 결과를 가져오게 된다.
예를 들면, 위에서 얘기했듯이 + 연산자가 있습니다. + 연산자는 정수, 부동 소수점 수 타입의 변수에서는 덧셈으로 작용하고 문자열 타입의 변수에서는 문자열을 이어주는 기능을 하게 된다.
ddd = 1 + 4
print(ddd) # 5로 출력
eee = 'hello ' + ' there'
print(eee) # hello there로 출력.
eee = eee + 1
#문자열 타입과 정수형 타입을 더하려 했기 때문에 에러 발생.
만약 우리가 타입이 다른 변수에 대해 연산을 하게 되면 파이썬은 오류 메세지를 띄워 자신에게 정확히 알려달라고 요청한다. 파이썬은 타입에 민감하기 때문에 매우 중요하게 다뤄야한다.
값이나 변수의 타입을 알고 싶을 때 type() 함수 사용하여 해당 객체의 타입을 알 수 있습니다.
eee = 'hello' + ' world'
print(eee) # hello world
print(type(eee)) # <class 'str'> 문자열 타입
print(type(1)) # <class 'int'> 정수형 타입
숫자를 나타내는 타입으로는 정수(int), 부동소수점(float) 등이 있다.
정수(int) → 14, 2, -2, 100
부동 소수점(float) → 2.5, -3.0, 0.0, 107.6
이 외 타입으로는 리스트, 딕셔너리, 불, 세트 등 이 있다.
파이썬에는 타입을 변환할 수 있는 함수가 내재되어 있기에 간단반 방법으로 타입을 변환할 수 있다.
변환시키고 싶은 타입 형식으로 감싸주면 타입이 바뀌게 된다.
예를 들어, i 라는 변수를 정수 타입으로 선언했다고 하자.
만약 i 변수를 부동 소수점 수 타입으로 바꾸어 저장하고 싶다면 f = float( i ) 로 적어주면 된다.
i = 42
type(i) # int형
f = float(i) # float형으로 변환
print(f) # 42.0 출력
type(f) # float형
sval = '123'
type(sval) # str형
print(sval + 1) # 문자열과 int를 더한 것이므로 오류
ival = int(sval) # int형으로 맞춰줘야함으로 int형변환
type(ival) # int형
print(ival + 1)
# int형간 연산이기 때문에 오류 발생하지 않는다. 124로 출력됨
name = input('자네의 이름은 무엇인가요? ') # 입력받을 input 값을 name에 저장
print('어서와!', name) # 해당 입력값을 nam이라는 변수에 할당한 다음 어서와!이라는 문자열과 함께 출력합니다.