본문 바로가기
728x90
반응형

함수46

초보자를 위한 파이썬 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.
초보자를 위한 파이썬 300제 // 231 함수 결과예상 문제 아래 코드를 실행한 결과를 예상하라. def n_plus_1 (n) : result = n + 1 n_plus_1(3) print (result) 내풀이 실행이 안되고 에러가 발생한다. 정답 에러가 발생합니다. NameError Traceback (most recent call last) in () 3 4 n_plus_1(3) ----> 5 print (result) 6 NameError: name 'result' is not defined 함수 내부에서 사용한 변수는 함수 밖에서는 접근이 불가능합니다. (문법이 그래요) 함수 내부에서 계산한 값을 전달하기 위해서는 return을 사용해야 합니다. def n_plus_1 (n) : result = n + 1 n_plus_1(3) print (resu.. 2021. 3. 11.
초보자를 위한 파이썬 300제 // 230 함수 결과예상 문제 아래 코드의 실행 결과를 예측하라. def my_print (a, b) : print("왼쪽:", a) print("오른쪽:", b) my_print(b=100, a=200) 내풀이 왼쪽: 200 오른쪽: 100 정답 5 번 라인에서 함수를 호출하는데, a 변수에 200, b 변수에 100을 바인딩하라고 지정을 했습니다. 따라서 아래와 같이 출력됩니다. 왼쪽: 200 오른쪽: 100 변수를 지정해서 바인딩할때에는 순서랑 상관없이 지정해준데로 출력 된다. 2021. 3. 11.
728x90
반응형