Python
-
Python-basic 재귀함수 - 함수가 자신을 호출Python 2021. 2. 11. 04:28
재귀함수 : 함수가 자신을 호출한다. def CountDown(n): if n == 0: print('처리 완료') else: print(n, end = " ") CountDown(n - 1) #함수가 자신을 호출 CountDown(5) [출력 결과] 5 4 3 2 1 처리 완료 [출력결과 설명] def totFunc(su): print('{} 재귀호출받음'.format(su)) if su == 1: print('처리 끝') return True return su + totFunc(su - 1) re = totFunc(10) print('10까지의 합은 : ', re) [출력 결과] 10 재귀호출받음 9 재귀호출받음 8 재귀호출받음 7 재귀호출받음 6 재귀호출받음 5 재귀호출받음 4 재귀호출받음 3 재귀..
-
Python-basic 함수 클로저 : 내부함수 반환Python 2021. 2. 11. 04:17
closure(클로저) : 내부 함수의 주소를 반환해서 함수의 멤버를 계속적으로 참조하는 것 def outer(): count = 0 def inner(): nonlocal count count += 1 return count return inner #이게 클로저 >> 내부 함수의 주소를 치환 print('*'*10,) outer() print(outer()) #inner 주소 print('*'*10) obj1 = outer() # inner의 주소를 치환 print(obj1) #주소 print(obj1()) #주소의 리턴값 print('*'*10) result = obj1 #주소 print(result) result = obj1() #주소의 리턴값 print(result) print('*'*10) pr..
-
Python-basic 함수 가변인수 아큐먼트의 갯수가 부정확할 때 **Python 2021. 2. 11. 03:21
가변인수 : 인수의 갯수가 부정확한 경우 *로 표시한다. * >> tuple ** >> dict 가변함수 - * (별 한개 사용) - tuple def function1(process, *number): if process == '+': re = 0 for i in number: re += i elif process == '*': re = 1 for i in number: re *= i return re print(function1('+', 1,2,3,4,5)) print(function1('*', 1,2,3,4,5)) [출력 결과] 15 120 가변함수 - ** (별 두개 사용) - dict def function2(w, h, **etc): print('몸무게{}, 키{}'.format(w,h)) pr..
-
Python-basic 함수 가변인수 아큐먼트의 갯수가 부정확할 때 *Python 2021. 2. 11. 02:47
가변인수 : 인수의 갯수가 부정확한 경우 *로 표시한다. * >> tuple ** >>dict def func1(*ab): print(ab) for i in ab: print('음식: ' + i) func1('아메리카노') func1('비빔밥', '공기밥', '김밥') [출력결과] ('아메리카노',) 음식: 아메리카노 ('비빔밥', '공기밥', '김밥') 음식: 비빔밥 음식: 공기밥 음식: 김밥 [출력결과 설명] 함수가 받을 인수의 갯수가 부정확할 때 *을 표시 해준다. def func2(a, *ab): #def func2(*a, ab): - 에러 뒤에만 *가능하다. print(a) print(ab) for i in ab: print('음식: ' + i) func2('아메리카노') func2('비빔밥',..
-
Python-basic 함수 아규먼트(argument) 키워드 매칭Python 2021. 2. 11. 02:23
함수 사용. argument 키워드로 매칭하기 def ShowGugu(start=1, end = 5): print(start, end) print('1_', end = " ") ShowGugu() print('2_', end = " ") ShowGugu(2, 8) print('3_', end = " ") ShowGugu(2) print('4_', end = " ") ShowGugu(end = 10) print('5_', end = " ") ShowGugu(start = 2, end = 7) print('6_', end = " ") ShowGugu(end = 7, start = 2) print('7_', end = " ") #ShowGugu(start = 2, 7) - 에러난다 ShowGugu(2, end..
-
Python-basic 함수 안에 지역변수와 전역변수 구분!!Python 2021. 2. 11. 01:32
지역변수와 전역변수 구분해서 알기 a = 10; b = 20; c = 30 # 전역변수 print('1) a:{}, b:{}, c:{}'.format(a,b,c)) def Foo(): a = 40 b = 50 def Bar(): global c # 전역변수를 사용하려면 global 적어야함. nonlocal b print('2) a:{}, b:{}, c:{}'.format(a,b,c)) # Bar에 ab가 없어서 상위로 올라가서 가져옴 c = 60 b = 70 Bar() Foo() print('3) a:{}, b:{}, c:{}'.format(a,b,c)) [출력 결과] 1) a:10, b:20, c:30 2) a:40, b:50, c:30 3) a:10, b:20, c:60 [출력결과 설명] ★전역변수..
-
Python-basic 내가 만든 함수 functionPython 2021. 2. 11. 01:07
구구단 함수 - 원하는 단 출력하기 def gugudan(i): print('{}단'.format(i)) for j in range(1,10): print('{} X {} = {}'.format(i,j,i*j)) print('-- 출력하고 싶은 단을 입력하라 --') gugudan(3) #함수 호출 [출력 결과] -- 출력하고 싶은 단을 입력하라 -- 3단 3 X 1 = 3 3 X 2 = 6 3 X 3 = 9 3 X 4 = 12 3 X 5 = 15 3 X 6 = 18 3 X 7 = 21 3 X 8 = 24 3 X 9 = 27 홀수인지 아닌지 확인하는 함수 - return 사용 def whatis(i): return i % 2 == 1 print(whatis(3)) # True print(whatis(4)..
-
Python - basic 내장 함수 몇 가지Python 2021. 2. 10. 02:19
내장함수 print('') print(sum([3, 5, 7])) print(bin(8)) print(int(1.7), float(7), str(5) + '오') a = 10 b = eval('a + 5') print(b) print(round(1.2), round(1.7)) [출력결과] 15 0b1000 1 7.0 5오 15 1 2 [출력 결과 설명] print(bin(8)) >> bin 함수는 Ob가 앞에 붙은 이진 문자열로 변환한다. int - 정수, float - 실수, str - 문자열 eval( ' a+5 ' ) >> eval( expression ) - expression->식 >> 식을 문자열로 받아서 실행하는 함수이다. x = [10, 20, 30] y = ['a', 'b'] for i ..