본문 바로가기
728x90
반응형

python420

초보자를 위한 파이썬 300제 // 240 함수 예측하기 문제 아래 코드의 실행 결과를 예측하라. def 함수0(num) : return num * 2 def 함수1(num) : return 함수0(num + 2) def 함수2(num) : num = num + 10 return 함수1(num) c = 함수2(2) print(c) 내풀이 결과값 28 정답 28 그냥 천천히 대입해가면서 하면 아마 어려움 없으실꺼에요 ! 2021. 3. 16.
초보자를 위한 파이썬 300제 // 239 함수 예측하기 문제 아래 코드의 실행 결과를 예측하라. def 함수1(num) : return num + 4 def 함수2(num) : num = num + 2 return 함수1(num) c = 함수2(10) print(c) 내풀이 결과값 16 정답 8번 함수2가 호출됩니다. 4번 라인으로 파이썬 인터프리터는 이동하고 이때 num에는 10이 바인딩됩니다. 5번 라인 코드를 실행하면 num이 12로 업데이트 됩니다. 6번라인의 코드를 실행하려고 하는데, 함수1이 호출됩니다. 1번 라인의 함수 정의부로 이동하며 num 값은 12로 바인딩됩니다. 2번 라인의 코드가 실행돼서 16이 반환됩니다. 함수1의 동작을 끝마치고 함수 2의 6번 라인으로 돌아오고 함수2도 return을 만나면서 16을 반환합니다. 8번 라인으로 돌아.. 2021. 3. 15.
초보자를 위한 파이썬 300제 // 238 함수 예측하기 문제 아래 코드의 실행 결과를 예측하라. def 함수1(num) : return num + 4 def 함수2(num) : return num * 10 a = 함수1(10) c = 함수2(a) print(c) 내풀이 결과값 140 정답 7번 라인에서 함수1으로 10이 입력돼서 14가 반환됩니다. a 변수에는 14가 저장됩니다. 8번 라인에서 함수2로 a에 저장된 14가 입력돼서 140이 반환됩니다. 변수 c에는 140이 바인딩됩니다. a가 선언 된 후에 함수2를 실행했기 때문에 차례대로 잘 진행하기만 하면 된다. 2021. 3. 15.
초보자를 위한 파이썬 300제 // 237 함수 예측하기 문제 아래 코드의 실행 결과를 예측하라. def 함수(num) : return num + 4 c = 함수(함수(함수(10))) print(c) 내풀이 결과값 22 정답 함수가 여러번 중첩돼 있습니다. 안쪽 부터 차례로 해석하면 됩니다. 함수(10)의 결과 14, 함수(14) 결과 18, 함수(18) 결과 22 가 반환됩니다. 결국 36번과 동일한 코드를 축약해서 작성해 놓은 겁니다. 모양만 다를뿐 전 문제와 동일한 문제이다. 순서대로 더하기만 잘하면 된다. 2021.03.14 - [Coding/초보자를 위한 파이썬 300제] - 초보자를 위한 파이썬 300제 // 236 함수 예측하기 2021. 3. 14.
초보자를 위한 파이썬 300제 // 236 함수 예측하기 문제 아래 코드의 실행 결과를 예측하라. def 함수(num) : return num + 4 a = 함수(10) b = 함수(a) c = 함수(b) print(c) 내풀이 출력값 22 정답 4번 라인에서 함수로 10이 입력돼서 14가 반환됩니다. a 변수에는 14가 저장됩니다. 5번 라인에서 함수로 14가 입력돼서 18이 반환됩니다. 변수 b에는 18이 바인딩됩니다. 6번 라인에서 함수로 18가 입력돼서 22가 반환됩니다. 변수 c에는 22가 바인딩됩니다. 순차적으로 더하기만 잘하면 예측할 수 있다. 2021. 3. 14.
초보자를 위한 파이썬 300제 // 235 함수 replace() 문제 콤마가 포함된 문자열 숫자를 입력받아 정수로 변환하는 convert_int 함수를 정의하라. convert_int("1,234,567") 1234567 내풀이 def convert_int(num): print(int(num.replace(",", ""))) convert_int("1,234,567") 결과값 1234567 정답 def convert_int (string) : return int(string.replace(',', '')) replace()로 , 를 없엔 후 int로 형변환 해주어 출력 하면 된다. replace("지울문자", "변경문자") 2021. 3. 14.
초보자를 위한 파이썬 300제 // 234 함수 짝수추출 문제 숫자로 구성된 하나의 리스트를 입력받아, 짝수들을 추출하여 리스트로 반환하는 pickup_even 함수를 구현하라. pickup_even([3, 4, 5, 6, 7, 8]) [4, 6, 8] 내풀이 def pickup_even(num): list = [] for i in num: if i % 2 == 0: list.append(i) print(list) pickup_even([3, 4, 5, 6, 7, 8]) 결과값 [4, 6, 8] 정답 def pickup_even(items): result = [] for item in items: if item % 2 == 0: result.append(item) return result 출력값이 list형식이기 때문에 빈 list를 만들어 append()로 .. 2021. 3. 14.
초보자를 위한 파이썬 300제 // 233 함수 list 문제 문자열을 입력받아 각 문자들로 구성된 리스트로 반환하는 make_list 함수를 정의하라. make_list("abcd") ['a', 'b', 'c', 'd'] 내풀이 def make_list(string): str = [] for i in string: str.append(i) print(str) make_list("abcd") 결과값 ['a', 'b', 'c', 'd'] 정답 비어있는 리스트에 문자열을 하나씩 추가합니다. 이어서 리스트를 반환 (return) 합니다. def make_list (string) : my_list = [] for 변수 in string : my_list.append(변수) return my_list 문자열을 list로 형변환하면 쉽게 문제를 해결할 수 있습니다. de.. 2021. 3. 12.
초보자를 위한 파이썬 300제 // 232 함수 문자열 문제 문자열 하나를 입력받아 인터넷 주소를 반환하는 make_url 함수를 정의하라. make_url("naver") www.naver.com 내풀이 def make_url(name): print("www.%s.com" % name) make_url("naver") 결과값 www.naver.com 정답 def make_url(string) : url = "www." + string + ".com" return url 간단하므로 한줄로 표현할 수도 있습니다. def make_url(string) : return "www." + string + ".com" % 는 문자열 포맷팅을 하는 방식인데 코드가 길어졌을 때, 가독성이 좋아지고 코드도 짧아지기 때문에 익혀두면 아주 좋습니다 ! %s (string - 문.. 2021. 3. 12.
728x90
반응형