파이썬 함수 소개
파이썬 함수
함수는 호출될 때만 실행되는 코드 블록입니다.
매개변수라고 하는 데이터를 함수에 전달할 수 있습니다.
함수는 결과로 데이터를 반환할 수 있습니다.
함수 생성
Python에서 함수는 def 키워드를 사용하여 정의됩니다.
예시
def my_function():
print("Enjoy functions")
인수
정보는 인수로 함수에 전달할 수 있습니다.
인수는 함수 이름 뒤에 괄호 안에 지정됩니다. 원하는 만큼 인수를 추가할 수 있으며 쉼표로 구분하면 됩니다.
다음 예제에는 하나의 인수(fname)가 있는 함수가 있습니다. 함수가 호출되면 이름을 전달합니다. 이름은 함수 내부에서 전체 이름을 인쇄하는 데 사용됩니다.
예시
def my_function(fname):
print(fname + " Refsnes")
my_function("Brian")
my_function("Junior")
my_function("Lin")
매개변수는 인수와 어떻게 다릅니까?
매개변수는 함수 정의에서 괄호 안에 나열된 변수입니다.
def my_function(fname):
**fname** represents a parameter
인수는 호출될 때 함수에 전송되는 값입니다.
my_function("Brian")
**Brian** represents the argument.
이제 괜찮아! 😂 매개변수 및 인수에 대한 자세한 내용을 자유롭게 배울 수 없다면 here
인수의 수
기본적으로 함수는 올바른 수의 인수로 호출되어야 합니다. 즉, 함수에 2개의 인수가 필요한 경우 더도 말고 덜도 말고 2개의 인수를 사용하여 함수를 호출해야 합니다.
예시
이 함수는 2개의 인수를 예상하고 2개의 인수를 가져옵니다.
def my_function(fname, lname):
print(fname + " " + lname)
my_function("Brian", "lux")
참고: 1개 또는 3개의 인수로 함수를 호출하려고 하면 오류가 발생합니다.
임의 인수, *args
함수에 전달할 인수의 수를 모르는 경우 함수 정의에서 매개변수 이름 앞에 *를 추가합니다.
이 방법으로 함수는 튜플 인수를 수신하고 그에 따라 항목에 액세스할 수 있습니다.
예시
인수의 수를 알 수 없는 경우 매개변수 이름 앞에 *를 추가합니다.
def my_function(*kids):
print("The youngest child is " + kids[2])
my_function("John", "Andy", "Lin")
기본 매개변수 값
다음 예는 기본 매개변수 값을 사용하는 방법을 보여줍니다.
인수 없이 함수를 호출하면 기본값이 사용됩니다.
예시
def my_function(country = "Norway"):
print("I am from " + country)
my_function("Sweden")
my_function("India")
my_function()
my_function("Brazil")
목록을 인수로 전달
인수의 모든 데이터 유형(문자열, 숫자, 목록, 사전 등)을 함수에 보낼 수 있으며 함수 내에서 동일한 데이터 유형으로 처리됩니다.
예를 들어 List를 인수로 보내면 함수에 도달할 때 여전히 List가 됩니다.
예시:
def my_function(food):
for x in food:
print(x)
fruits = ["apple", "banana", "cherry"]
my_function(fruits)
반환 값
함수가 값을 반환하도록 하려면 return 문을 사용합니다.
예시:
def my_function(x):
return 5 * x
print(my_function(3))
print(my_function(5))
print(my_function(9))
합격 성명
함수 정의는 비워둘 수 없지만 어떤 이유로 내용이 없는 함수 정의가 있는 경우 오류가 발생하지 않도록 pass 문을 입력하십시오.
예시:
def myfunction():
pass
재귀
Python은 또한 함수 재귀를 허용합니다. 이는 정의된 함수가 스스로를 호출할 수 있음을 의미합니다.
재귀는 일반적인 수학 및 프로그래밍 개념입니다. 함수가 자신을 호출한다는 의미입니다. 이는 결과에 도달하기 위해 데이터를 반복할 수 있다는 이점이 있습니다.
개발자는 절대 종료되지 않는 함수나 과도한 양의 메모리 또는 프로세서 성능을 사용하는 함수를 작성하는 데 빠져들기 매우 쉽기 때문에 재귀에 대해 매우 주의해야 합니다. 그러나 올바르게 작성되면 재귀는 프로그래밍에 대한 매우 효율적이고 수학적으로 우아한 접근 방식이 될 수 있습니다.
이 예에서 tri_recursion()은 자체 호출("재귀")하도록 정의한 함수입니다. 우리는 데이터로 k 변수를 사용하는데, 재귀할 때마다 (-1) 감소합니다. 조건이 0보다 크지 않으면(즉, 0인 경우) 재귀가 종료됩니다.
새로운 개발자에게는 이것이 정확히 어떻게 작동하는지 알아내는 데 시간이 걸릴 수 있습니다. 가장 좋은 방법은 테스트하고 수정하는 것입니다.
재귀 예제
def tri_recursion(k):
if(k > 0):
result = k + tri_recursion(k - 1)
print(result)
else:
result = 0
return result
print("\n\nRecursion Example Results")
tri_recursion(6)
Reference
이 문제에 관하여(파이썬 함수 소개), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/bidhampola/introduction-to-python-functions-g8m
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
def my_function():
print("Enjoy functions")
def my_function(fname):
print(fname + " Refsnes")
my_function("Brian")
my_function("Junior")
my_function("Lin")
def my_function(fname):
**fname** represents a parameter
my_function("Brian")
**Brian** represents the argument.
def my_function(fname, lname):
print(fname + " " + lname)
my_function("Brian", "lux")
def my_function(*kids):
print("The youngest child is " + kids[2])
my_function("John", "Andy", "Lin")
def my_function(country = "Norway"):
print("I am from " + country)
my_function("Sweden")
my_function("India")
my_function()
my_function("Brazil")
def my_function(food):
for x in food:
print(x)
fruits = ["apple", "banana", "cherry"]
my_function(fruits)
def my_function(x):
return 5 * x
print(my_function(3))
print(my_function(5))
print(my_function(9))
def myfunction():
pass
def tri_recursion(k):
if(k > 0):
result = k + tri_recursion(k - 1)
print(result)
else:
result = 0
return result
print("\n\nRecursion Example Results")
tri_recursion(6)
Reference
이 문제에 관하여(파이썬 함수 소개), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/bidhampola/introduction-to-python-functions-g8m텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)