컴퓨터_Com/파이썬 초급 연습문제_Exercise for bigginers(18)
-
[파이썬 초급 연습문제 #18] Cows And Bulls 게임
From www.practicepython.org Exercise 18: cows and bulls 게임을 만들어라. 이 게임은 무작위로 숫자 4개를 생성하여 사용자에게 숫자를 맞추게 하는 게임이다. 숫자와 위치를 맞추면 cow, 숫자는 맞추되 위치를 틀리면 bull이 주어진다. 사용자가 숫자를 정확히 맞추면 게임이 끝난다. 게임이 끝날 떼 몇 번 만에 맞추었는지 알려주어라. Main method 파이썬에서 미리 만들어 놓은 모듈을 이용하고자 할 때 import 기능을 사용한다. 그런데 변수가 겹치거나 불필요한 기능까지 불러오는 것을 막기 위해 main 부분을 만들어 놓는다. if __name__=="__main__": 부분은 main 부분이기 때문에 추후 import 했을 때, 수행되지 않는다. 즉..
2019.08.28 -
[파이썬 초급 연습문제 #17] Web page 번역하기 (Decode A Web Page)
From www.practicepython.org Exercise 17: beutifulSoup과 requests 라이브러리를 이용하여 파이썬이 New Your Times의 모든 기사제목을 출력하는 프로그램을 만들어라. (New York Times homepage) 라이브러리(Libraries) 파이썬에는 다른 사람들이 이미 만들어 놓은 라이브러리가 매우 많이 존재한다. (예 : random) 라이브러리를 사용하기 위해서는 아래와 같은 순서를 따른다. 1. 라이브러리를 설치한다. 2. import 한다. (예: import random) 3. 사용 시 라이브러리에 대한 문서를 참고한다. requests 라이브러리 파이썬의 라이브러리중 하나인 requests는 HTTP를 다루는 데에 사용된다. 예를 들..
2019.08.28 -
[파이썬 초급 연습문제 #16] 비밀번호 생성기 (Password Generator)
From www.practicepython.org Exercise 16: 비밀번호를 자동으로 생성해주는 프로그램을 만들어라. 생성되는 비밀번호는 소문자, 대문자, 숫자, 기호의 조합이어야 한다. 실행시간을 표시하는 기능을 추가하라. 추가 : 사용자에게 비밀번호의 강도를 정할 수 있게 하라. 내 풀이
2019.08.28 -
[파이썬 초급 연습문제 #15] 단어 배열 뒤집기 (Reverse Word Order)
From www.practicepython.org Exercise 15: 여러개의 단어가 포함된 문장을 입력으로 받아서 단어의 순서를 뒤집는 프로그램을 만들어라 (함수 이용). My name is Michele --> Michele is name My string 나누기 (Splitting strings) string은 리스트로 분류될 수 있으며 split을 이용하면 원하는 문자를 이용하여 분리가 가능하다. 1 2 3 4 5 6 7 8 9 test = "this is a test" result = test.split("t") print(result) ['', 'his is a ', 'es', ''] test1 = "this has a lot of spaces and tabs" result1 = tes..
2019.08.28 -
[파이썬 초급 연습문제 #14] 함수 이용하기 (Fibonacci)
From www.practicepython.org Exercise 14: 리스트를 받아서 중복되는 숫자를 지워서 새로운 리스트를 만드는 프로그램(함수 이용)을 만들어라. 추가 : 하나는 loop를 이용하고 다른 하나는 set()을 이용하라. Sets의 특징 Sets의 구성요소들은 순서가 없이 나열된다. Sets의 구성요소들은 중복되지 않는다. (set()을 이용하면 중복된 숫자를 지우는 것이 가능하다.) Sets와 리스트를 변경하는 것이 매우 쉽다. In Python 1 2 3 4 5 6 7 8 9 10 11 12 names = set() names.add("Michele") names.add("Robin") names.add("Michele") print(names) {'Michele', 'Robin..
2019.08.27 -
[파이썬 초급 연습문제 #13] 함수 이용하기 (Fibonacci)
From www.practicepython.org Exercise 13: 사용자에게 얼마나 많은 피보나치 숫자를 원하는 가를 입력으로 받아서 생산하는 프로그램을 만들어라. (함수를 사용하라. 수학에서, 피보나치 수(영어: Fibonacci numbers)는 첫째 및 둘째 항이 1이며 그 뒤의 모든 항은 바로 앞 두 항의 합인 수열이다.) 내 풀이
2019.08.27 -
[파이썬 초급 연습문제 #12] 리스트에서 숫자 뽑기 (List Ends)
From www.practicepython.org Exercise 12: 리스트의 첫 번째 숫자와 마지막 숫자를 뽑는 프로그램을 만들어라 (프로그램 작성 시에 함수(function)을 사용해라.) 내 풀이
2019.08.26 -
[파이썬 초급 연습문제 #11] 함수 이용하기 (Check Primality Functions)
From www.practicepython.org Exercise 11: 사용자에서 숫자 하나를 입력으로 받아서 그 숫자가 약수가 있는지 없는지 확인하는 프로그램을 만들어라. (프로그램 작성 시에 함수(function)을 사용해라.) 도움이 되는 파이썬 문법 함수(Functions) 파이썬에서 function은 subprogram이나 subfunction과 같은 기능을 한다. 1 2 3 4 5 6 7 8 9 10 11 def get_integer(): return int(input("Give me a number: ")) age = get_integer() school_year = get_integer() if age > 15: print("You are over the age of 15.") else..
2019.08.26 -
[파이썬 초급 연습문제 #10] 중복된 리스트의 이해 (List Overlap Comprehensions)
From www.practicepython.org Exercise 9: 아래 두 개의 리스트를 입력으로 받아서 중복되는 숫자를 뽑아내는 프로그램을 만들어라. 주의 : 두 리스트를 구성하는 숫자의 개수가 다를 경우도 있음 a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89] b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] 도움이 되는 파이썬 문법 리스트의 이해 (List comprehensions) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 >>> x = [ 1,2,3] >>> y=[5,10,15] >>> allproducts=[a*b for a in x for b in y] >>> print(allproducts)..
2019.08.26 -
[파이썬 초급 연습문제 #09] 번호 맞추기 게임 (Guessing Game One)
From www.practicepython.org Exercise 9: 1에서 9까지 숫자 중에서 하나를 무작위로 뽑아서 사용자에게 그 번호를 맞추게 하는 프로그램을 만들어라. 사용자의 입력과 무작위 숫자를 비교하여 '크다', '작다', '맞다' 라고 출력하라. 추가문제: 사용자가 "exit"를 입력할 때까지 게임이 계속되도록 하라. 사용자가 몇개의 숫자를 맞추었는지 기록하여 끝나면 맞춘 개수를 보여주어라. 도움이 되는 파이썬 문법 Random Numbers (and Modules) 파이썬에서 다른 사람에 의해 이미 작성된 코드를 모듈(Module)이라 부른다. 아래는 random 모듈의 예를 보여준다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ..
2019.08.22 -
[파이썬 초급 연습문제 #08] 가위바위보 (Rock, Paper, Scissors)
From www.practicepython.org Exercise 8: 가위바위보 프로그램(사용자 vs. 컴퓨터)을 만들어라. 사용자로 부터 rock, paper, scissors중 하나를 입력으로 받아서 컴퓨터와 대결하도록 프로그램을 만들고, 게임이 끝나면 더 할지 말지 선택할 수 있게 하라. 도움이 되는 파이썬 문법 While 루프 while은 어떤 조건이 참(True)이면 계속 루프가 반복되는 구조이다. 예를 들어: 1 2 3 4 5 a = 5 while a > 0: print(a) a = a - 1 cs 아래의 예는 사용자가 "enter"를 입력할 때까지 루프가 끝나지 않는 구조이다. 1 2 3 4 quit = input('Type "enter" to quit:' ) while quit != "..
2019.08.22 -
[파이썬 초급 연습문제 #07] 리스트에 대한 이해 (List comprehension)
From www.practicepython.org Exercise 7: 아래의 리스트에서 짝수만 뽑아서 새로운 리스트를 만드는 프로그램을 작성하라. a = [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] 도움이 되는 파이썬 문법 리스트의 이해 (List Comprehension) for 루프를 이용하여 새로운 리스트를 만드는 법을 연습해보자. 1 2 3 4 5 6 7 years_of_birth = [1990, 1991, 1990, 1992, 1991] ages = [] for year in years_of_birth: ages.append(2019 - year) print(ages) Colored by Color Scripter cs 두 번째 방법은 for 루프를 좀 더 간단하게..
2019.08.22 -
[파이썬 초급 연습문제 #06] 문자형 리스트 (String list)
From www.practicepython.org Exercise 6: 사용자에게 어떤 단어를 입력으로 받아서 그 단어가 앞뒤 어느 쪽에서 읽어도 같은 단어(palindrome)인지 확인하는 프로그램을 만들어라. 도움이 되는 파이썬 문법 1. 리스트 구성요소 번호 (List indexing) 리스트 구성요소의 번호를 정할 때, 첫 번째 구성요소의 번호가 '0'이 되고 두 번째 구성요소가 '1'이다. >>> a = [5, 10, 15, 20, 25] >>> a[3] 20 >>> a[0] 5 리스트의 슬라이싱도 가능하다. >>> a = [5, 10, 15, 20, 25, 30, 35, 40] >>> a[1:4] [10, 15, 20] >>> a[6:] [35, 40] >>> a[:-1] [5, 10, 1..
2019.08.21 -
[파이썬 초급 연습문제 #05] 리스트 다루기 (List Overlap)
From www.practicepython.org Exercise 5: 숫자로 이루어진 아래 두 개의 리스트에서 중복되는 숫자를 찾아서 출력하여라. (주의 : 리스트를 구성하고 있는 숫자들의 개수가 다를 경우도 있음.) a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89] b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] 추가문제: 1. 프로그램 작동 시 무작위로 두 개의 리스트를 입력하는 기능을 추가하라. 2. 이 프로그램은 한 줄로 작성하라. 도움이 되는 파이썬 문법 1. 리스트 속성 (List properties) 파이썬에서는 어떤 숫자가 리스트 안에 들어 있는지를 확인할 수 있다. 1 2 3 4 5 >>> a = [5, 10, 15, ..
2019.08.21 -
[파이썬 초급 연습문제 #04] 약수 구하기 (Divisor)
From www.practicepython.org Exercise 4: 사용자로부터 숫자 하나를 입력으로 받아서 그 숫자의 약수를 모두 출력하는 프로그램을 만들어라. (약수 : 어떤 숫자를 나누어 떨어지게 하는 숫자) (Solution 보기) 도움이 되는 파이썬 문법 1. range() 함수로 리스트 만들기 리스트의 구성요소를 모두 입력할 수도 있지만, 그 구성 요소들이 일정한 범위의 값일 경우에는 range()함수를 쓸 수 있다. 아래와 같이 입력하면 리스트 x는 [2, 3, 4, 5, 6, 7, 8, 9, 10]로 생성된다. 1 2 x = range(2, 11) print(x) cs 2. 리스트와 for 루프 for 루프를 이용하면 리스트의 구성요소들을 하나씩 이용가능하다. 1 2 for elem..
2019.08.19 -
[파이썬 초급 연습문제 #03] 리스트 (list)
From www.practicepython.org Exercise 3: 아래의 리스트 내에서 5이하인 숫자를 출력하라. (Solution 보기) a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89] 추가문제: 1. 숫자를 하나씩 출력하지 말고 새로운 리스트를 만들어서 출력하라. 2. 위 프로그램을 한 줄의 프로그램으로 수정하라. 3. 하나의 숫자를 입력으로 받아서 리스트에서 그 숫자보다 작은 숫자를 출력하라. 도움이 되는 파이썬 문법 1. 리스트 (List) 빈 리스트 x를 정의 하고 리스트 x에 3을 구성 요소(elements)로 추가하려면: 1 2 3 x = [] x.append(3) print(x) cs 파이썬에서는 리스트의 구성요소들을 for 루프에 하나씩 집어 넣을 수..
2019.08.19 -
[파이썬 초급 연습문제 #02] 홀수짝수
From www.practicepython.org Exercise 2: 사용자에게 하나의 숫자를 입력하게 하고 그 숫자가 짝수인지 홀수인지 출력하는 프로그램을 작성하시오. (힌트 : 홀수와 짝수를 2로 나누면??) (Solution 보기) 추가문제: 1. 숫자가 4의 배수일 경우, 다른 메세지를 출력하라. 2. 두 개의 숫자를 입력으로 받아서 첫 번째 숫자(num)가 두 번째 숫자(check)에 의해 정확히 나누어 지는 지 출력하라. 도움이 되는 파이썬 문법 1. 산술 연산 (Modular arithmetic) Python3에서 %부호는 나머지 수를 의미한다. 예를 들어: 1 2 3 4 5 6 >>> 5 % 3 2 >>> 6 % 3 0 >>> 7 % 3 1 cs 2. 조건문 (Conditionals)..
2019.08.19 -
[파이썬 초급 연습문제 #01] 문자입력
From www.practicepython.org Exercise 1: 사용자에게 이름과 나이를 입력하도록 요청하는 프로그램을 만드시오. 사용자가 입력한 나이를 이용하여 100살이 되는 해를 알려주는 메세지를 출력하시오. (Solution 보기) 도움이 되는 파이썬 문법 1. 사용자 입력 받기 Python3에서 사용자의 입력을 받을때 사용하는 명령이 input()이다. input() 명령어를 통해 결과를 변수에 저장할 수 있다. User로부터 얻은 결과는 숫자를 입력하더라도 문자열이 된다는 점을 주의해야 한다. 예를 들어: 1 2 name = input("Give me your name: ") print("Your name is " + name) cs 2. 문자열 다루기 input() 이용하여 입력을..
2019.07.30