두근두근 파이썬 수업 4장 자료의 종류에는 어떤 것들이 있나요?
이번 장에서 만들 프로그램 (1) 터틀 그래픽의 거북이와 인사하는 프로그램을 작성해 보자. Run Python (2) 여러 개의 색상을 리스트에 저장하였다가 하나씩 꺼내서 원들을 그려 보자 Run Python
파이썬에서 사용할 수 있는 자료의 종류
파이썬과 자료형 변수에 어떤 종류의 자료도 저장할 수 있다 x = 10 print("x =", x) x = 3.14 x = "Hello World!" x = 10 x = 3.14 x = Hello World!
문자열 컴퓨터에게는 숫자가 중요하지만 인간에게는 텍스트(text) 가 중요하다. (예) 문자 메시지, 인터넷 도메인 이름 컴퓨터를 이용한 텍스트의 처리도 무척 중요하다.
문자열 문자열(string)은 문자들의 나열(sequence of characters) 이다.
문자열을 만드는 방법 큰따옴표 작은 따옴표 >>> "Hello" 'Hello' >>> msg = "Hello" >>> msg >>> print(msg) Hello
문법적인 오류 큰따옴표(“)로 시작했다가 작은따옴표(‘)로 끝내면 문법적 인 오류이다. >>> msg = "Hello' SyntaxError: EOL while scanning string literal
100과 “100”의 차이 100 -> 정수 “100”, ‘100’->문자열 >>> print(100+200) 300 >>> print("100"+"200") 100200 100+200을 하면 (정수+정수) 형태가 되어서 덧셈이 가능하다. 하지만 “100”+”200”은 텍스트와 텍스트끼리 합하는 것이기 때문에 그냥 2개의 텍스트가 붙어 버린다.
문자열 -> 숫자 int(): 문자열을 정수로 변환 float(): 문자열을 실수로 변환 t = input("정수를 입력하시오: ") x = int(t) y = int(t) print(x+y) 정수를 입력하시오: 100 정수를 입력하시오: 200 300
숫자->문자열 다음 코드에 오류가 발생하는 이유는? >>> print('나는 현재 ' + 21 + '살이다.') Traceback (most recent call last): File "<pyshell#1>", line 1, in <module> print('나는 현재 ' + 21 + '살이다.') TypeError: Can't convert 'int' object to str implicitly 문자열과 숫자를 합칠 수 없는 의미입니다.
숫자->문자열 str() 함수 사용 >>> print('나는 현재 ' + str(21) + '살이다.') 나는 현재 21살이다. >>> print('원주율은 ' + str(3.14) + '입니다.') 원주율은 3.14입니다.
문자열 접합 2개의 문자열을 합치려면 -> + 연산자 >>> 'Hello ' + 'World!'
문자열 반복 문자열을 반복하려면 -> * 연산자 >>> message = " Congratulations!" >>> print(message*3) Congratulations!Congratulations!Congratulations! >>> print("="*50) ==================================================
문자열에 변수값 포함 문자열에 변수의 값을 삽입하여 출력하고 싶으면 ->%기 호 사용 >>> price = 10000 >>> print("상품의 가격은 %s원입니다." % price) 상품의 가격은 10000원입니다.
Lab: 거북이와 인사해보자. 터틀 그래픽에서 사용자의 이름을 받아서 다음과 같이 출 력해보자. Run Python
터틀 그래픽에서 문자열을 입력받는 방법 s = turtle.textinput("", "이름을 입력하시오: ")
터틀 그래픽에서 문자열을 출력하는 방법 t.write("안녕하세요? 터틀 인사드립니다.")
Solution import turtle t = turtle.Turtle() t.shape("turtle") s = turtle.textinput("", "이름을 입력하시오: ") t.write("안녕하세요?" + s +"씨, 터틀 인사드립니다.") t.left(90) t.forward(100)
개별 문자 추출 문자열에서 개별 문자들을 추출하려면 -> 인덱스라는 번 호를 사용한다. s = "Monty Python" print(s[6:10]) Pyth
특수 문자열 >>> print("말 한마디로\n천 냥 빚을 갚는다") 말 한마디로 천 냥 빚을 갚는다
Lab: 친근하게 대화하는 프로그램 변수를 사용하여 사용자의 이름과 나이를 문자열 형태로 기억했다가 출력할 때 사용하는 프로그램을 작성해 보자. 문자열의 길이를 계산할 때는 len(s)를 사용한다. Run Python
Solution print('안녕하세요?') name = input('이름이 어떻게 되시나요? ') print('이름의 길이는 다음과 같군요:', end=' ') print(len(name)) age = int(input("나이가 어떻게 되나요? ")) print("내년이면", str(age+1), "이 되시는군요.")
Lab: 연, 월, 일을 합하여 출력하기 문자열을 저장하는 변수를 사용하여 사용자가 입력하는 오늘의 연도, 월, 일을 모두 합하여 화면에 출력하는 프로 그램을 작성해 보자.
Solution year = input("오늘의 연도를 입력하시오: ") month = input("오늘의 월을 입력하시오: ") date = input("오늘의 일을 입력하시오: ") print("오늘은", year+"년", month+"월", date+"일입니다.")
Lab: 2050년에는 몇 살이 될까? 자신이 2050년에 몇 살이 될 것인지를 계산하는 프로그 램을 작성해 보자. import time now = time.time() thisYear = int(1970 + now//(365*24*3600)) print("올해는 " + str(thisYear)+"입니다.")
Solution import time now = time.time() thisYear = int(1970 + now//(365*24*3600)) print("올해는 " + str(thisYear)+"입니다.") age = int(input("몇 살이신지요? ")) print("2050년에는 "+str(age + 2050-thisYear)+"살 이시군요.")
리스트 리스트(list): 여러 개의 자료들을 모아서 하나의 묶음으로 저장하는 것 slist = [ '영어', '수학', '사회', '과학' ]
리스트에 항목을 동적으로 추가 공백 리스트를 생성한 후에 코드로 리스트에 값을 추가하 는 것 list = [] list.append(1) list.append(2) list.append(6) list.append(3) print(list) [1, 2, 6, 3]
리스트 요소 접근하기 slist = [ '영어', '수학', '사회', '과학' ] print(slist[0]) 영어
Lab: 친구들의 리스트 생성하기 제일 친한 친구 5명의 이름을 리스트에 저장했다가 출력 하는 프로그램을 작성하자. Run Python
Solution friend_list = [ ] friend = input("친구의 이름을 입력하시오: ") friend_list.append(friend) print(friend_list)
Lab: 리스트에 저장된 색상으로 원그리기 리스트에 색상을 문자열로 저장하였다가 하나씩 꺼내서 거북이의 채우기 색상으로 설정하고 원을 그려 보자. Run Python
Solution import turtle t = turtle.Turtle() t.shape("turtle") # 리스트를 사용하여 색상을 문자열로 저장한다. color_list = [ "yellow", "red", "blue", "green" ] t.fillcolor(color_list[0]) # 채우기 색상을 설정한다. t.begin_fill() # 채우기를 시작한다. t.circle(100) # 속이 채워진 원이 그려진다. t.end_fill() # 채우기를 종료한다. t.forward(50) t.fillcolor(color_list[1]) # 채우기 색상을 설정한다. ...
이번 장에서 배운 것 파이썬에서 기본적인 자료형은 정수, 실수, 문자열이다. 문자열은 큰따옴표(“...”)나 작은 따옴표(‘...’)를 사용할 수 있다. 문자열을 정수로 변경하려면 int()를 사용한다. 문자열을 실수로 변경하려면 float()를 사용한다. 정수나 실수를 문자열로 변경하려면 str()을 사용한다. 문자열과 문자열을 합치려면 + 연산자를 사용한다. 문자열을 반복하려면 * 연산자를 사용한다. input()은 사용자로부터 문자열을 받아서 우리에게 반환한다. \n은 줄 바꿈을 나타내는 특수 문자열이다. 리스트는 자료들을 모아서 저장할 수 있다. 파이썬에서 기본적인 자료형은 정수, 실수, 문자열이다. 문자열은 큰따옴표(“...”)나 작은 따옴표(‘...’)를 사용할 수 있다. 문자열을 정수로 변경하려면 int()를 사용한다. 문자열을 실수로 변경하려면 float()를 사용한다. 정수나 실수를 문자열로 변경하려면 str()을 사용한다. 문자열과 문자열을 합치려면 + 연산자를 사용한다. 문자열을 반복하려면 * 연산자를 사용한다. input()은 사용자로부터 문자열을 받아서 우리에게 반환한다. \n은 줄 바꿈을 나타내는 특수 문자열이다. 리스트는 자료들을 모아서 저장할 수 있다.
Q & A