산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> python

Python 함수 예제:호출, 들여쓰기, 인수 및 반환 값

파이썬에서 함수란 무엇입니까?

Python의 함수 참조될 때 실행되는 코드 조각입니다. 프로그램의 여러 위치에서 코드를 활용하는 데 사용됩니다. 방법 또는 절차라고도 합니다. Python은 print(), input(), compile(), exec() 등과 같은 많은 내장 함수를 제공하지만 자신만의 함수를 만들 수 있는 자유도 제공합니다.

이 튜토리얼에서는 배울 것입니다

파이썬에서 함수를 정의하고 호출하는 방법

Python의 함수는 "def" 로 정의됩니다. 명령문 뒤에 함수 이름과 괄호( () )

예:

" def func1():" 명령을 사용하여 함수를 정의하고 함수를 호출해 보겠습니다. 함수의 출력은 "I am learning Python function"입니다.

print func1() 함수 def func1():을 호출하고 ” I am learning Python function None. 명령을 인쇄합니다. "

파이썬에는 함수를 정의하는 일련의 규칙이 있습니다.

Python에서 들여쓰기(공백)의 중요성

Python 함수에 익숙해지기 전에 Python 함수를 선언하는 들여쓰기 규칙을 이해하는 것이 중요하며 이러한 규칙은 조건, 루프 또는 변수 선언과 같이 Python의 다른 요소에도 적용할 수 있습니다.

Python 함수는 함수의 시작과 중지를 나타내는 중괄호처럼 명시적인 시작이나 끝이 없으므로 이 들여쓰기에 의존해야 하므로 Python은 특정 스타일의 들여쓰기를 따라 코드를 정의합니다. . 여기에서는 "print" 명령을 사용하여 간단한 예를 들어보겠습니다. def func 1() 바로 아래에 "print" 함수를 작성하면 "indentation error:expected indented block이 표시됩니다. ".


이제 "print" 함수 앞에 들여쓰기(공백)를 추가하면 예상대로 인쇄됩니다.

적어도 한 번의 들여쓰기만으로도 코드가 성공적으로 작동합니다. 그러나 가장 좋은 방법은 함수를 호출하기 위해 3-4개 정도 들여쓰기를 남겨두는 것입니다. .

들여쓰기를 선언하는 동안 나머지 코드에 대해 동일한 들여쓰기를 유지해야 합니다. . 예를 들어 아래 스크린샷에서 다른 문을 "still in func1"이라고 호출하고 첫 번째 인쇄 문 바로 아래에 선언되지 않은 경우 들여쓰기 오류 "unindent is not match other indentation level"가 표시됩니다. /강한>

이제 두 명령문에 동일한 들여쓰기를 적용하고 동일한 줄에 정렬하면 예상한 결과가 나옵니다.

함수 반환 값은 어떻게 되나요?

Python의 반환 명령은 함수 호출자에게 반환할 값을 지정합니다.

다음 예를 통해 이것을 이해합시다

1단계) 여기서 우리는 함수가 "반환"이 아닌 경우를 봅니다. 예를 들어, 우리는 4의 제곱을 원하고 코드가 실행될 때 "16"으로 답해야 합니다. 단순히 "print x*x" 코드를 사용할 때 제공되지만 "print square" 기능을 호출하면 출력으로 "None"이 제공됩니다. 함수를 호출할 때 재귀가 발생하지 않고 함수의 끝에서 떨어지기 때문입니다. Python은 함수 끝에서 실패하면 "None"을 반환합니다.

2단계) 이를 더 명확하게 하기 위해 인쇄 명령을 할당 명령으로 바꿉니다. 출력을 확인해보자.

"print square (4)" 명령을 실행하면 여기에서 실행할 특정 함수가 없기 때문에 실제로 개체의 값을 반환합니다. "None"을 반환합니다.

3단계) 이제 "return" 명령을 사용하여 출력을 검색하는 방법을 살펴보겠습니다. "return" 기능을 사용하고 코드를 실행하면 "16"이 출력됩니다.

4단계) 파이썬의 함수는 그 자체로 객체이며 객체에는 어떤 값이 있습니다. 여기서 우리는 파이썬이 객체를 어떻게 취급하는지 볼 것입니다. "print square" 명령을 실행하면 개체의 값이 반환됩니다. 인수를 전달하지 않았기 때문에 여기에서 실행할 특정 함수가 없으므로 객체의 위치인 기본값(0x021B2D30)을 반환합니다. 실용적인 Python 프로그램에서는 아마도 이 작업을 수행할 필요가 없을 것입니다.

함수의 인수

인수는 호출될 때 함수에 전달되는 값입니다.

즉, 호출측에서는 인수이고 함수측에서는 매개변수입니다.

Python Args가 어떻게 작동하는지 봅시다 –

1단계) 인수는 함수 정의에서 선언됩니다. 함수를 호출하는 동안 아래와 같이 해당 인수에 대한 값을 전달할 수 있습니다.

2단계) 인수의 기본값을 선언하려면 함수 정의에서 값을 할당하십시오.

예:x에는 기본값이 없습니다. 기본값은 y=0입니다. 곱하기 함수를 호출하는 동안 하나의 인수만 제공하면 Python은 y=0 값을 유지하면서 제공된 값을 x에 할당합니다. 따라서 x*y=0의 곱

3단계) 이번에는 기본값 y=0 대신 y=2로 값을 변경하고 출력을 (4×2)=8로 반환합니다.

4단계) Python에서 인수를 전달할 수 있는 순서를 변경할 수도 있습니다. 여기에서 값 x 및 y의 순서를 x=4 및 y=2로 반대로 했습니다.

5단계) 여러 인수를 배열로 전달할 수도 있습니다. 여기 예제에서 (*args) 함수를 호출하여 다중 인수(1,2,3,4,5)를 호출합니다.

예:(*args) 함수를 호출할 때 여러 개의 인수를 숫자(1,2,3,4,5)로 선언했습니다. 출력을 (1,2,3,4,5)

로 출력합니다.

:

  • 파이썬 2.7. 함수 오버로딩 파이썬에서는 지원되지 않습니다. 함수 오버로딩은 구현이 다른 동일한 이름의 여러 메서드를 만드는 기능입니다. 함수 오버로딩은 Python 3에서 완벽하게 지원됩니다.
  • 메소드와 함수 사이에 상당한 혼란이 있습니다. 파이썬의 메소드는 객체 인스턴스와 연관되지만 함수는 그렇지 않습니다. Python이 메서드를 호출할 때 해당 호출의 첫 번째 매개변수를 적절한 객체 참조에 바인딩합니다. 간단히 말해서 Python에서 독립 실행형 함수는 "함수"인 반면 클래스 또는 인스턴스의 속성인 함수는 "메소드"입니다.

다음은 전체 Python 3 코드입니다.

#define a function
def func1():
   print ("I am learning Python function")
   print ("still in func1")
   
func1()

def square(x):
  	return x*x
print(square(4))

def multiply(x,y=0):
	print("value of x=",x)
	print("value of y=",y)
    
	return x*y
  
print(multiply(y=2,x=4))

다음은 전체 Python 2 코드입니다.

#define a function
def func1():
   print " I am learning Python function"
   print " still in func1"
   
func1()

def square(x):
  	return x*x
print square(4)

def multiply(x,y=0):
	print"value of x=",x
	print"value of y=",y
    
	return x*y
  
print multiply(y=2,x=4)

요약:

Python의 함수는 단일 관련 작업을 수행하는 데 사용되는 재사용 가능한 코드입니다. 이 기사에서 우리는 볼 것입니다

  • def에 의해 정의된 함수 성명서
  • 모든 함수 내의 코드 블록은 콜론(:)으로 시작하고 들여쓰기(공백)해야 합니다.
  • 인수나 입력 매개변수는 이러한 괄호 안에 넣어야 합니다.
  • 함수 선언 후 코드 앞에 적어도 하나의 들여쓰기가 있어야 합니다.
  • def 함수 내에서 코드 전체에 걸쳐 동일한 들여쓰기 스타일을 유지해야 합니다.
  • 모범 사례의 경우 문 앞에 서너 개의 들여쓰기가 가장 좋은 것으로 간주됩니다.
  • "return" 명령을 사용하여 함수 호출에 값을 반환할 수 있습니다.
  • Python은 호출 함수에 인수가 제공되지 않을 때 (0x021B2D30)과 같은 임의의 값을 인쇄합니다. "인쇄 기능"의 예
  • 호출 측에서는 인수이고 함수 측에서는 매개변수입니다.
  • 인수 내 기본값 – 곱하기 함수 또는 다른 함수를 호출하는 동안 하나의 인수만 제공하면 Python은 기본적으로 다른 인수를 할당합니다.
  • Python을 사용하면 인수의 순서도 바꿀 수 있습니다.

python

  1. Python 문, 들여쓰기 및 주석
  2. 파이썬 함수 인수
  3. Python 익명/람다 함수
  4. 파이썬 생성기
  5. 파이썬 클로저
  6. 파이썬 데코레이터
  7. 프로그램 예제가 있는 C++ 함수
  8. 예제가 있는 Python Lambda 함수
  9. Python abs() 함수:절대값 예제
  10. 예제가 있는 Python round() 함수