본문 바로가기
728x90
반응형

초보자270

초보자를 위한 파이썬 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.
초보자를 위한 파이썬 300제 // 229 함수 결과예상 문제 아래 코드의 실행 결과를 예측하라. def my_print (a, b) : print("왼쪽:", a) print("오른쪽:", b) my_print(a=100, b=200) 내풀이 왼쪽: 100 오른쪽: 200 정답 우선 아래의 기본 코드를 분석해 보겠습니다. 5번 라인에서 함수가 호출되면, 함수가 정의된 1번 라인으로 이동합니다. 이 때 함수의 입력 변수 a에 100을 바인딩하고, b에 200을 바인딩합니다. my_print(100, 200) 아래 코드는 함수가 호출될 때 a에 100, b에 200을 바인딩하라는 것을 명시적으로 표현한 코드입니다. 아래 코드는 문법만 다를 뿐 위 코드와 동일한 동작을 수행합니다. my_print(a=100, b=200) 함수의 호출 결과는 아래와 같습니다. 왼쪽.. 2021. 3. 11.
초보자를 위한 파이썬 300제 // 228 int() 문제 연봉을 입력받아 월급을 계산하는 calc_monthly_salary(annual_salary) 함수를 정의하라. 회사는 연봉을 12개월로 나누어 분할 지급하며, 이 때 1원 미만은 버림한다. calc_monthly_salary(12000000) 1000000 내풀이 def calc_monthly_salary(money): print(int(money/12)) calc_monthly_salary(1200555) 결과값 100046 정답 입력된 값을 12로 나누고 형변환을 해서 1원 미만을 절사합니다. def calc_monthly_salary(annual_pay) : monthly_pay = int(annual_pay / 12) return monthly_pay int() 함수는 정수만 나타내기 때문.. 2021. 3. 11.
초보자를 위한 파이썬 300제 // 227 함수 슬라이싱 문제 문자열과 한줄에 출력될 글자 수를 입력을 받아 한 줄에 입력된 글자 수만큼 출력하는 print_mxn(string) 함수를 작성하라. printmxn("아이엠어보이유알어걸", 3) 아이엠 어보이 유알어 걸 내풀이 line = "아이엠어보이유알어걸" def printmxn(line, num): for i in range(num+1): print(line[i*num : i*num+num]) printmxn("아이엠어보이유알어걸",3) 결과값 아이엠 어보이 유알어 걸 정답 def print_mxn(line, num): chunk_num = int(len(line) / num) for x in range(chunk_num + 1) : print(line[x * num: x * num + num]) 이번 문.. 2021. 3. 10.
728x90
반응형