Python - 14.함수
by jennysgap함수
def myfunc() : print('함수내 작업수행1') print('함수내 작업수행2') print('함수내 작업수행3')
14.1.2 실습
def myfunc() : print('함수내 작업수행1') print('함수내 작업수행2') print('함수내 작업수행3') myfunc() myfunc()
14.1.3 실습
def myfunc1(arg) : print('함수의 입력 :', arg) if arg > 0 : print(arg, '는 양수 입니다.') elif arg == 0 : print(arg, '는 0입니다.') else : print(arg, '는 음수 입니다.') myfunc1(7) myfunc1(-1) myfunc1(0)
14.1.4 실습
def isOdd(arg) : if arg % 2 == 1 : print('odd') result = True else : print('even') result = False return result print('함수의 결과:', isOdd(0)) print('함수의 결과:', isOdd(7)) print('함수의 결과:', isOdd(4))
14.1.5 실습
def sum3(arg1, arg2, arg3) : print('함수의 입력:', arg1, arg2, arg3) sum = arg1 + arg2 + arg3 return sum result = sum3(7, 10, 20) print('함수의 결과:', result)
14.1.6 연습문제1
def mysum(var1, var2) : print('mysum') sum = var1 + var2 print('{} + {} = {}'.format(var1,var2, sum)) mysum(55,45)
14.1.7 연습문제2
def chkmul7(n) : if n % 7 == 0 : result = True else : result = False return result
print(chkmul7(7))
print(chkmul7(10))
def chkmul13(n) : return n % 13 == 0
print(chkmul13(13)) print(chkmul13(15))
14.1.8 연습문제3
def chknum(n) : print('chknum') if 1 <= n <= 100 : print('1<=n<=100')
chknum(0)
chknum(70)
14.1.9 연습문제4
def advsum(n) : sum = 0 for i in range(n+1) : sum += i return sum ''' cnt = 1 sum = 0 while cnt <= n : sum += cnt cnt += 1 return sum ''' print(advsum(10)) print(advsum(100))
14.2 가변인자
• 입력값이 여러 개일 때 몇개가 될지 모를 때 사용하면 유용함
14.2.1 실습
def sum_many(*args) : # * : 가변을 의미한다
sum = 0
for i in args :
sum = sum + i
return sum
print('1~3까지의 합 : ', sum_many(1,2,3))
print('1~6까지의 합 : ', sum_many(1,2,3,4,5,6))
print('1~10까지의 합 : ', sum_many(1,2,3,4,5,6,7,8,9,10))
14.2.2 실습
def sum_mul(choice, *args) : # 기본type은 tuple이다. if choice == 'sum': result = 0 for i in args: result = result + i elif choice == 'mul': result = 1 for i in args: result = result * i return result print(sum_mul('sum', 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)) print(sum_mul('mul', 1, 2, 3, 4, 5)) #mylist = (1,2,3,4,5) #print('리스트를 인자로 :', sum_many(mylist)) # 튜플, 리스트 range, str을 가변인자로 받으면 여러개의 인자를 튜플로 또 감싸기 때문에 안됨 # 튜플, 리스트 range, str을 사용할 경우 가변인자를 의미하는 * 을 지워야 함
14.2.3 연습문제
def printStart(*num) : cnt = 0 while cnt < len(num) : print('{}:{}'.format(num[cnt], num[cnt]*'★')) cnt += 1 printStart(5,2,4,7,3,4,3)
def printStart(*num) : cnt = len(num) for i in range(cnt) : print('{}:{}'.format(num[i],'★'*num[i])) printStart(10,1,3,0,6)
14.3 튜플자료형 리턴
def sum_and_mul(a,b) : sum = a+b mul = a*b return (sum, mul) result = sum_and_mul(3,5) print(result)
14.3.1 연습문제
def mydiv(a,b) : div = a // b mod = a % b return (div, mod) # 함수리턴값은 기본적으로 1개임 # 파이썬에서는 튜플, 리스트, 집합, 딕셔너리를 이용하여 여러 개 값을 결과로 활용할 수 있다. # Go (구글에서 만든 언어, 조금씩 뜨고 있음) result = mydiv(14,5) print(result, type(result)) print('몫', result[0]) print('나머지', result[0]) # 파이썬에 이미 함수가 있음 a,b = divmod(14,5) # unpacking assignment 튜플인 경우 ()를 생략할 수 있다
print('몫', a) print('나머지', b)
14.4 초기값 (DEFAULT)
14.5 KEYWORD 인자
14.6 함수안에서 선언된 변수(지역변수의 범위)
14.7 GLOBAL
'BOX' 카테고리의 다른 글
피싱, 파밍, 스미싱 개념 이해 (0) | 2017.02.05 |
---|---|
입사지원이메일 작성요령 꿀팁 (0) | 2017.02.05 |
안랩 보안 바로알기 캠페인 (0) | 2017.02.03 |
Python - 복습 겸 연습문제 풀기 (0) | 2017.02.02 |
Python - 13.WHILE과 FOR (0) | 2017.02.01 |
블로그의 정보
jennysgap
jennysgap