두근두근 파이썬 수업 2장 변수를 소개합니다.
이번 장에서 학습하는 내용 (1) 첫 번째 프로그램은 두 개의 정수를 가지고 덧셈 연산을 실행한 후에, 연산 결과를 화면에 출력한다. (2) 집의 크기를 입력받아서 터틀 그래픽으로 화면에 그린다.
일반적인 프로그램의 구조 일반적인 프로그램은 외부로부터 데이터를 받아서(입력 단계), 데이터를 처리한 후에(처리단계), 결과를 화면에 출력(출력단계)한다.
변수의 소개 변수(variable)는 값을 저장하는 상자로 생각할 수 있다. 변수는 컴퓨터 메모리 공간에 만들어 진다.
변수 생성 파이썬에서 변수를 생성하려면 다음과 같이 한다. >>> x = 100 >>>
변수의 사용 생성된 변수에는 얼마든지 다른 값을 저장할 수 있다. >>> x = 100 >>> print(x) 200
변수 2개 생성 >>> x = 100 >>> y = 200
변수를 이용한 계산 >>> x = 100 >>> y = 200 >>> sum = x + y >>> print(sum) 300
주의!!
문자열도 변수에 저장할 수 있다! 파이썬의 변수에는 정수뿐만 아니라 문자열도 저장할 수 있다. 파이썬의 변수에는 정수뿐만 아니라 문자열도 저장할 수 있다. >>> name = "홍길동" >>> address = "서울시 종로구 1번지" >>> print(name) 홍길동 >>> print(address) 서울시 종로구 1번지
도전문제
변수의 이름 의미 있는 이름을 사용 소문자와 대문자는 서로 다르게 취급된다. 변수의 이름은 영문자와 숫자, 밑줄(_)로 이루어진다. 변수의 이름 중간에 공백이 들어가면 안 된다. 단어를 구분하려면 밑 줄(_)을 사용 한다.
식별자 sum # 영문 알파벳 문자로 시작 _count # 밑줄 문자로 시작할 수 있다. number_of_pictures # 중간에 밑줄 문자를 넣을 수 있다. King3 # 맨 처음이 아니라면 숫자도 넣을 수 있다. 2nd_base (X) # 숫자로 시작할 수 없다. money# (X) # #과 같은 기호는 사용할 수 없다.
낙타체 낙타체는 변수의 첫 글자는 소문자로, 나머지 단어 의 첫 글자는 대문자로 적는 방법이다. 예를 들면, myNewCar 처럼 첫 'm'은 소문자로, 나머지 단어들의 첫 글 자는 대문 자로 표기한다
이런 것도 가능하다! score = 10 score = score + 1
여러 값을 함께 출력하기 x = 100 y = 200 sum = x + y print(x, "과", y, "의 합은", sum, "입니다.") 100 과 200 의 합은 300 입니다.
Lab: 변수는 어디에 유용할까? 다음과 같이 터틀 그래픽을 사용하여 반지름이 100픽셀인 3개의 원 을 그리는 프로그램이 있다고 하자. import turtle t = turtle.Turtle() t.shape("turtle") radius = 100 t.circle(radius) # 반지름이 100인 원이 그려 진다. t.fd(30)
코드 변경 하지만 갑자기 원의 반지름을 50으로 변경하여서 다시 그 려야 한다면 어떨까? -> 원의 반지름이 변수로 표현되었기 때문에 쉬운 방법이 있 다. 변수만 변경하면 된다. t.circle(100) t.fd(30) radius = 100 t.circle(radius) t.fd(30) X X X X
Solution import turtle t = turtle.Turtle() t.shape("turtle") radius = 50 t.circle(radius) # 반지름이 50인 원이 그려 진다. t.fd(30)
사용자로부터 정수 입력받기
완전한 코드 x = int(input("첫 번째 정수를 입력하시오: ")) y = int(input("두 번째 정수를 입력하시오: ")) sum = x + y print(x, "과", y, "의 합은", sum, "입니다.") 첫 번째 정수를 입력하시오: 300 두 번째 정수를 입력하시오: 400 100 과 200 의 합은 300 입니다.
완전한 코드
사용자로부터 문자열 입력받기 name = input("이름을 입력하시오: ") print(name, "씨, 안녕하세요?") 이름을 입력하시오: 홍길동 홍길동 씨, 안녕하세요? 파이썬에 오신 것을 환영합니다.
도전문제
Lab: 집그리기 우리는 사용자로부터 집의 크기를 입력받아서 크기에 맞는 집을 그 려보자. 집의 크기는 얼마로 할까요? 100
Solution import turtle t = turtle.Turtle() t.shape("turtle") size = int(input("집의 크기는 얼마로 할까요? ")) t.forward(size) # size 만큼 거북이를 전진시킨다. t.right(90) # 거북이를 오른쪽으로 90도 회전시킨다. t.forward(size) t.right(90) t.left(120)
Lab: 로봇 기자 만들기 사용자에게 경기장, 점수, 이긴 팀, 진 팀, 우수 선수를 질 문하고 변수에 저장한다. 이들 문자열에 문장을 붙여서 기사를 작성한다. 경기장은 어디입니까?서울 이긴팀은 어디입니까삼성 진팀은 어디입니까?LG 우수선수는 누구입니까?홍길동 스코어는 몇대몇입니까?8:7 =========================================== 오늘 서울 에서 야구 경기가 열렸습니다. 삼성 과 LG 은 치열한 공방전을 펼쳤습니다. 홍길동 이 맹활약을 하였습니다. 결국 삼성 가 LG 를 8:7 로 이겼습니다.
Solution # 사용자의 대답을 변수에 저장한다. stadium = input("경기장은 어디입니까?") winner = input("이긴팀은 어디입니까") loser = input("진팀은 어디입니까?") vip = input("우수선수는 누구입니까?") score = input("스코어는 몇대몇입니까?") # 변수와 문자열을 연결하여 기사를 작성한다. print("") print("===========================================") print("오늘", stadium, "에서 야구 경기가 열렸습니다.") print(winner, "과", loser, "은 치열한 공방전을 펼쳤습니다.") print(vip, "이 맹활약을 하였습니다.") print("결국", winner,"가", loser,"를 ", score,"로 이겼습니다.") print("===========================================
이번 장에서 배운 것 컴퓨터에서는 변수를 사용하여 어떤 것을 컴퓨터 메모리 안에 저장할 수 있다. 컴퓨터에서는 변수를 사용하여 어떤 것을 컴퓨터 메모리 안에 저장할 수 있다. 변수들은 이름을 가지고 있다. 변수들은 숫자뿐만 아니라 문자열도 저장할 수 있다. 사실 은 어떤 것이든지 저장이 가능하다.
Q & A