SlideShare a Scribd company logo
1 of 15
Download to read offline
널널한 교수의 기초 파이썬
04_2 함수와 매개변수
창원대학교 정보통신공학과 박동규, 주효진, 김덕구
동영상 강의자료와 코드
• 동영상 강의(널널한 교수의 기초 파이썬)
• https://www.youtube.com/watch?
v=TK6RLGaM3Ao&list=PL2P1Vm9k53HOEn-QYXAfblQWkR0OW9mKX
• 소스코드( GitHub )
• https://github.com/dongupak/Basic-Python-Programming
함수(function)
프로그래밍에서 특정한 작업을 수행하기 위한 명령문들의 모임이다.
함수에게 작업을 시킬때, 값을 넘겨주고 일을 시킬 수 있다.

이때 넘겨주는 값을 인자(argument)라고 하며, 함수 내에서는 변수 형태로 받아서 사용한다.

이 변수를 매개변수(parameter) 라고 한다
def :(n, m)
사용할 변수 전달
‘매개변수’라고 함
printStar() 를 효율적으로
n 이라는 매개변수(연결변수)를 이용한다
별을 1줄 출력할 수 있다
원하는 만큼 여러줄 출력이 가능하다
반복문 for는 다음에 다룹니다
반복 횟수를 함수 호출할 때 알려줍니다
(인수 혹은 인자라고 함)
수행결과
매개변수 활용하여 합계 구하기
print_sum_func.py
결과
2개의 매개변수를 사용함
위와 같은 방식으로 호출해도 실행이 된다

함수 외부의 a, b 변수를 함수내부에서 사용가능하기 때문

그러나 전역변수를 많이 사용하면 큰 분량의 코딩시 문제를 일으킴
그래서 매개변수를 사용하는 것이 에러를 줄이는데 도움이 됨
비교(프로그래밍시 나쁜 습관)
sum_func.py
함수 외부에서 정의한 변수 a, b
함수 내부에서 사용가능
Lab
응용 : 2차 방정식과 근
본 예제에서는 a가 0이 아닌 경우에 한하여 두개의 근이
존재한다고 가정하고 근을 구해 보자
이차 방정식의 해 구하기
결과
function1.py
다른 값을 대입하여 한 번 더 구한다면?
결과
근의 공식을 이용한 코드를 매번 복사해
붙여 넣어야 한다면 불편..
이차 방정식의 해 구하기
function2.py
방정식에 필요한 a, b, c
방정식에 필요한 새로운 a, b, c
변수의 이름을 바꾸어도 OK
변수가 가진 값이 인자가 되어 전달된다
결과
매개변수 사용
함수에 n1, n2, n3가 가진 2,-6,-8값을 전달
함수에 값을 전달
Lab
정리
• 프로그래밍에서 특정한 작업을 수행하기 위한 명령문들의 모
임을 함수라고 한다
• 함수를 이용하여 프로그램에서 필요한 기능을 나누어 사용하
면 개발 작업을 편리하게 할 수 있다
• 함수에게 하나 이상의 값을 넘겨주는 것이 가능하다(인자 혹은
인수라고 함)
• 함수는 그 내부에서 매개변수를 통해 값을 전달받는다
감사합니다

More Related Content

What's hot

니름: 쉬운 SOA 단위 테스트
니름: 쉬운 SOA 단위 테스트니름: 쉬운 SOA 단위 테스트
니름: 쉬운 SOA 단위 테스트
효준 강
 

What's hot (20)

07 2 for in list
07 2 for in list07 2 for in list
07 2 for in list
 
파이썬을 활용한 자연어 분석 - 추가분
파이썬을 활용한 자연어 분석 - 추가분파이썬을 활용한 자연어 분석 - 추가분
파이썬을 활용한 자연어 분석 - 추가분
 
모두의 JIT 컴파일러
모두의 JIT 컴파일러모두의 JIT 컴파일러
모두의 JIT 컴파일러
 
알고리즘 시각화 라이브러리 ipytracer 개발기
알고리즘 시각화 라이브러리 ipytracer 개발기알고리즘 시각화 라이브러리 ipytracer 개발기
알고리즘 시각화 라이브러리 ipytracer 개발기
 
Python vs Java @ PyCon Korea 2017
Python vs Java @ PyCon Korea 2017Python vs Java @ PyCon Korea 2017
Python vs Java @ PyCon Korea 2017
 
딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...
딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...
딥러닝 논문 리뷰 Learning phrase representations using rnn encoder decoder for stati...
 
02_1_변수와친해지기
02_1_변수와친해지기02_1_변수와친해지기
02_1_변수와친해지기
 
10 2 튜플
10 2 튜플10 2 튜플
10 2 튜플
 
파이썬을 활용한 자연어 분석 - 2차
파이썬을 활용한 자연어 분석 - 2차파이썬을 활용한 자연어 분석 - 2차
파이썬을 활용한 자연어 분석 - 2차
 
20190901 seq2 sparql_kips
20190901 seq2 sparql_kips20190901 seq2 sparql_kips
20190901 seq2 sparql_kips
 
자바, 미안하다! 파이썬 한국어 NLP
자바, 미안하다! 파이썬 한국어 NLP자바, 미안하다! 파이썬 한국어 NLP
자바, 미안하다! 파이썬 한국어 NLP
 
Hello python 오리엔테이션(파이썬 스터디, 발표자료)
Hello python 오리엔테이션(파이썬 스터디, 발표자료)Hello python 오리엔테이션(파이썬 스터디, 발표자료)
Hello python 오리엔테이션(파이썬 스터디, 발표자료)
 
파이썬을 활용한 자연어분석 기초
파이썬을 활용한 자연어분석 기초파이썬을 활용한 자연어분석 기초
파이썬을 활용한 자연어분석 기초
 
06 1 리스트
06 1 리스트06 1 리스트
06 1 리스트
 
자연어5 | 1차강의
자연어5 | 1차강의자연어5 | 1차강의
자연어5 | 1차강의
 
니름: 쉬운 SOA 단위 테스트
니름: 쉬운 SOA 단위 테스트니름: 쉬운 SOA 단위 테스트
니름: 쉬운 SOA 단위 테스트
 
파이썬을 활용한 자연어 분석
파이썬을 활용한 자연어 분석파이썬을 활용한 자연어 분석
파이썬을 활용한 자연어 분석
 
파이썬과 자연어 5 | 딥러닝
파이썬과 자연어 5 | 딥러닝파이썬과 자연어 5 | 딥러닝
파이썬과 자연어 5 | 딥러닝
 
Albert
AlbertAlbert
Albert
 
파이썬과 커뮤니티와 한국어 오픈데이터
파이썬과 커뮤니티와 한국어 오픈데이터파이썬과 커뮤니티와 한국어 오픈데이터
파이썬과 커뮤니티와 한국어 오픈데이터
 

Similar to 04 2 함수와매개변수

Similar to 04 2 함수와매개변수 (20)

04 1 함수
04 1 함수04 1 함수
04 1 함수
 
04 4 입력과출력함수
04 4 입력과출력함수04 4 입력과출력함수
04 4 입력과출력함수
 
14 1 리스트의 메소드
14 1 리스트의 메소드14 1 리스트의 메소드
14 1 리스트의 메소드
 
08 모듈
08 모듈08 모듈
08 모듈
 
01_2_파이썬설치
01_2_파이썬설치 01_2_파이썬설치
01_2_파이썬설치
 
02_4_주석
02_4_주석02_4_주석
02_4_주석
 
05 1 자료형과문자열
05 1 자료형과문자열05 1 자료형과문자열
05 1 자료형과문자열
 
05 3 문자열포매팅
05 3 문자열포매팅05 3 문자열포매팅
05 3 문자열포매팅
 
14 3 리스트함수
14 3 리스트함수14 3 리스트함수
14 3 리스트함수
 
10 1 딕셔너리
10 1 딕셔너리10 1 딕셔너리
10 1 딕셔너리
 
09 1 날짜와시간모듈
09 1 날짜와시간모듈09 1 날짜와시간모듈
09 1 날짜와시간모듈
 
02_2_변수와연산자
02_2_변수와연산자02_2_변수와연산자
02_2_변수와연산자
 
Python study 1강 (오픈소스컨설팅 내부 강의)
Python study 1강 (오픈소스컨설팅 내부 강의)Python study 1강 (오픈소스컨설팅 내부 강의)
Python study 1강 (오픈소스컨설팅 내부 강의)
 
파이썬 함수 이해하기
파이썬 함수 이해하기 파이썬 함수 이해하기
파이썬 함수 이해하기
 
Lecture 1: Introduction to Python and TensorFlow
Lecture 1: Introduction to Python and TensorFlowLecture 1: Introduction to Python and TensorFlow
Lecture 1: Introduction to Python and TensorFlow
 
15 2 클래스정의와self
15 2 클래스정의와self15 2 클래스정의와self
15 2 클래스정의와self
 
17 1 람다함수
17 1 람다함수17 1 람다함수
17 1 람다함수
 
03_2_조건식
03_2_조건식03_2_조건식
03_2_조건식
 
Python - Module
Python - ModulePython - Module
Python - Module
 
06 2 리스트연산
06 2 리스트연산06 2 리스트연산
06 2 리스트연산
 

More from Changwon National University

More from Changwon National University (19)

생성인공지능둘러보기.pdf
생성인공지능둘러보기.pdf생성인공지능둘러보기.pdf
생성인공지능둘러보기.pdf
 
2011 app center Changwon National Univ.
2011 app center Changwon National Univ.2011 app center Changwon National Univ.
2011 app center Changwon National Univ.
 
인공지능의 파도가 온다
인공지능의 파도가 온다인공지능의 파도가 온다
인공지능의 파도가 온다
 
Mobile Healthcare Application
Mobile Healthcare ApplicationMobile Healthcare Application
Mobile Healthcare Application
 
바다 즐기기
바다 즐기기바다 즐기기
바다 즐기기
 
알아두면 편리한 macOS 에디터 단축키와 기능
알아두면 편리한 macOS 에디터  단축키와 기능알아두면 편리한 macOS 에디터  단축키와 기능
알아두면 편리한 macOS 에디터 단축키와 기능
 
키보드 기호의 이름 알아보기(한국어, 영어)
키보드 기호의 이름 알아보기(한국어, 영어)키보드 기호의 이름 알아보기(한국어, 영어)
키보드 기호의 이름 알아보기(한국어, 영어)
 
AI 로봇 아티스트의 비밀(창원대학교 정보통신공학과 특강)
AI 로봇 아티스트의 비밀(창원대학교 정보통신공학과 특강)AI 로봇 아티스트의 비밀(창원대학교 정보통신공학과 특강)
AI 로봇 아티스트의 비밀(창원대학교 정보통신공학과 특강)
 
20 2 강의를 마치며
20 2 강의를 마치며20 2 강의를 마치며
20 2 강의를 마치며
 
20 1 코딩스타일
20 1 코딩스타일20 1 코딩스타일
20 1 코딩스타일
 
18 2 파이썬표준라이브러리
18 2 파이썬표준라이브러리18 2 파이썬표준라이브러리
18 2 파이썬표준라이브러리
 
18 1 파이썬패키지
18 1 파이썬패키지18 1 파이썬패키지
18 1 파이썬패키지
 
16 1 상속과super()
16 1 상속과super()16 1 상속과super()
16 1 상속과super()
 
14 4 슬라이싱
14 4 슬라이싱14 4 슬라이싱
14 4 슬라이싱
 
12 3 raise문
12 3 raise문12 3 raise문
12 3 raise문
 
12 1 예외처리(try-except)
12 1 예외처리(try-except)12 1 예외처리(try-except)
12 1 예외처리(try-except)
 
11 1 while반복문
11 1 while반복문11 1 while반복문
11 1 while반복문
 
09 3 random모듈
09 3 random모듈09 3 random모듈
09 3 random모듈
 
07 3 이중for문
07 3 이중for문07 3 이중for문
07 3 이중for문
 

Recently uploaded

Recently uploaded (8)

실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
 
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례
 
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!
 
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법
 
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
 
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화
 
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
 
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
 

04 2 함수와매개변수

  • 1. 널널한 교수의 기초 파이썬 04_2 함수와 매개변수 창원대학교 정보통신공학과 박동규, 주효진, 김덕구
  • 2. 동영상 강의자료와 코드 • 동영상 강의(널널한 교수의 기초 파이썬) • https://www.youtube.com/watch? v=TK6RLGaM3Ao&list=PL2P1Vm9k53HOEn-QYXAfblQWkR0OW9mKX • 소스코드( GitHub ) • https://github.com/dongupak/Basic-Python-Programming
  • 3. 함수(function) 프로그래밍에서 특정한 작업을 수행하기 위한 명령문들의 모임이다. 함수에게 작업을 시킬때, 값을 넘겨주고 일을 시킬 수 있다. 이때 넘겨주는 값을 인자(argument)라고 하며, 함수 내에서는 변수 형태로 받아서 사용한다. 이 변수를 매개변수(parameter) 라고 한다 def :(n, m) 사용할 변수 전달 ‘매개변수’라고 함
  • 4. printStar() 를 효율적으로 n 이라는 매개변수(연결변수)를 이용한다 별을 1줄 출력할 수 있다 원하는 만큼 여러줄 출력이 가능하다 반복문 for는 다음에 다룹니다 반복 횟수를 함수 호출할 때 알려줍니다 (인수 혹은 인자라고 함)
  • 6. 매개변수 활용하여 합계 구하기 print_sum_func.py 결과 2개의 매개변수를 사용함
  • 7. 위와 같은 방식으로 호출해도 실행이 된다 함수 외부의 a, b 변수를 함수내부에서 사용가능하기 때문 그러나 전역변수를 많이 사용하면 큰 분량의 코딩시 문제를 일으킴 그래서 매개변수를 사용하는 것이 에러를 줄이는데 도움이 됨 비교(프로그래밍시 나쁜 습관) sum_func.py 함수 외부에서 정의한 변수 a, b 함수 내부에서 사용가능
  • 8. Lab
  • 9. 응용 : 2차 방정식과 근 본 예제에서는 a가 0이 아닌 경우에 한하여 두개의 근이 존재한다고 가정하고 근을 구해 보자
  • 10. 이차 방정식의 해 구하기 결과 function1.py
  • 11. 다른 값을 대입하여 한 번 더 구한다면? 결과 근의 공식을 이용한 코드를 매번 복사해 붙여 넣어야 한다면 불편.. 이차 방정식의 해 구하기 function2.py 방정식에 필요한 a, b, c 방정식에 필요한 새로운 a, b, c
  • 12. 변수의 이름을 바꾸어도 OK 변수가 가진 값이 인자가 되어 전달된다 결과 매개변수 사용 함수에 n1, n2, n3가 가진 2,-6,-8값을 전달 함수에 값을 전달
  • 13. Lab
  • 14. 정리 • 프로그래밍에서 특정한 작업을 수행하기 위한 명령문들의 모 임을 함수라고 한다 • 함수를 이용하여 프로그램에서 필요한 기능을 나누어 사용하 면 개발 작업을 편리하게 할 수 있다 • 함수에게 하나 이상의 값을 넘겨주는 것이 가능하다(인자 혹은 인수라고 함) • 함수는 그 내부에서 매개변수를 통해 값을 전달받는다