1-3-2. Python 변수 사용해보기
변수는 일반적으로 “변할 수 있는 자료” 라고 생각하면 됩니다.
‘이름’ = ‘값’ 의 형태를 가지며
아래의 예시를 들어 변수를 표현해 보겠습니다.
james(이름) = 012344(값)
012344라는 값의 이름이 james라는 이름을 가지게 되는 것이고
이 데이터가 이후에 필요하게 되면
단순하게 이름을 호출해서 사용하게 됩니다.
james = 123456 print(james)
필요하다면 한번에 길게 코드를 만드는게 아니라
변수로 지정한 다음 짧게 만들어 사용하는게 좋습니다.
변수 활용 방법 세가지
- 변수를 선언하기
앞서 말했던 방법으로 복잡한 값에 이름을 붙여
단순히 이름으로 호출하여 사용하는 방법입니다.
‘이름 = 값’ 을 잘 기억하여 나중에 활용 하는 것 입니다. - 변수에 값을 할당하는 방법
위에서 말한 ‘이름 = 값’은 왼쪽과 오른쪽이 같다는 의미가 아닌
오른쪽의 값을 왼쪽의 이름에 ‘집어 넣겠다’의 개념과 유사합니다. - 변수를 참조하는 방법
p = 3.141592
p = 3.141592 # 변수의 지정된 값을 출력하는 방법 p # 변수의 저장된 값으로 연산하기 p + p # 변수에 저장된 값을 출력하기 print(p) # 정사각형의 둘레와 넓이 구하기 # 변수(한변의 길이) 선언과 할당 x = 3 # 변수 참조 print("한변 길이 =", x) print("정사각형 둘레 =", 4 * x) print("정사각형 넓이 =" , x ** 2)
복합 대입 연산자
변수를 지정하고 나서
해당 변수를 다시 쓰지 않도록 도와주는 연산자라고 생각하면 좋을 것 같습니다.
복합 대입 연산자는 기본 연산자와 = 연산자를
합쳐 사용한 형태를 가지고 있습니다.
숫자에서의 적용
기본 연산자
a = 10
복합 대입 연산자
a += 20
의미 : 기본적으로 a = a + 20과 동일합니다.
- += : 숫자 덧셈 후 대입
- -= : 숫자 뺄셈 후 대입
- *= : 숫자 곱셈 후 대입
- /= : 숫자 나눗셈 후 대입
- %= : 숫자 나머지를 구한 후 대입
- **= : 숫자 제곱 후 대입
# += : 숫자 덧셈 후 대입 number = 10 number += 20 print(number) # 30이 예상됩니다. # -= : 숫자 뺄셈 후 대입 number = 10 number -= 5 print(number) # 5가 예상됩니다. # *= : 숫자 곱셈 후 대입 number = 10 number *= 2 print(number) # 20이 예상됩니다. # /= : 숫자 나눗셈 후 대입 number = 10 number /= 2 print(number) # 5.0이 예상됩니다. # %= : 숫자 나머지를 구한 후 대입 number = 10 number %= 3 print(number) # 1이 예상됩니다. # **= : 숫자 제곱 후 대입 number = 10 number **= 3 print(number) # 1000이 예상됩니다.
결과 이미지
문자열에서의 적용
- += : 문자열 연결 후 대입
- *= : 문자열 반복 후 대입
# += : 문자열 연결 후 대입 string = "안녕하세요" string += "?!" print(string) # 안녕하세요?! # *= : 문자열 반복 후 대입 string = "안녕하세요!" string *= 3 print(string) # 안녕하세요!안녕하세요!안녕하세요!
결과 이미지
변수와 입력
우리는 1-2에서 입출력 알아보기편에서 input함수에 대해 다루었습니다.
우리가 input으로 어떠한 값을 사용자에게 입력 받고 그 type을 확인해보기로 합시다.
a = input("입력 : ") print("내용 : ", a) print("자료형 : ", type(a))
결과 확인하기
이를 실행하여 보면 str임을 알 수 있습니다.
그렇다면, Python은 사용자에게 숫자를 입력받아 계산하는 방법이 있을까요?
str + int는 이전 포스팅에서 TypeError를 일으키는 것을 알고 있습니다.
우리에게는 문자열을 숫자로 변경하는 캐스트(cast)라고 부릅니다.
바꾸는 방법은 간단합니다.
자료형에서 배웠던 int, float로 문자열을 묶어주면 됩니다.
형태 : int(“str 내용”)과 같은 형태라 보시면 됩니다.
# 코드로 알아보기 string_1 = input("1번 숫자 : ") string_2 = input("2번 숫자: ") int_1 = int(string_1) int_2 = int(string_2) print("문자열로 계산하면 : ", string_1 + string_2) print("숫자로 계산하면 : ", int_1 + int_2)
결과 보기
위의 반대 경우인 str()함수로 다른 자료형을 문자열로 변환할 수 있습니다.
# 전체 코드 정리 # 이름 = 값 james = 123456 print(james) # 변수 활용 세가지 x = 3 print("한변 길이 =", x) print("정사각형 둘레 =", 4 * x) print("정사각형 넓이 =" , x ** 2) # 숫자에서의 적용 number = 10 number += 20 print(number) # 30이 예상됩니다. number = 10 number -= 5 print(number) # 5가 예상됩니다. number = 10 number *= 2 print(number) # 20이 예상됩니다. number = 10 number /= 2 print(number) # 5가 예상됩니다. number = 10 number %= 3 print(number) # 1이 예상됩니다. number = 10 number **= 3 print(number) # 1000이 예상됩니다. # input과 변수를 활용하여 만들기 a = input("입력 : ") print("내용 : ", a) print("자료형 : ", type(a)) string_1 = input("1번 숫자 : ") string_2 = input("2번 숫자: ") int_1 = int(string_1) int_2 = int(string_2) print("문자열로 계산하면 : ", string_1 + string_2) print("숫자로 계산하면 : ", int_1 + int_2)
이번 포스팅에서는 변수에 관한 내용들을 살펴보았고
다음 포스팅은 숫자 문자열의 여러 기능들에 대하여 정리해보겠습니다.
핑백: 1-3-1. Python 숫자 자료형(2) » 코드 한입
핑백: 1-3-3. Python 문자열의 다양한 기능들 확인하기 » 코드 한입
핑백: 1-4-1. Boolean과 if 조건문 관계를 아시나요? » 코드 한입