Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python:함수에서 여러 값 반환

해당 값을 사전, 튜플 또는 목록으로 묶음으로써 여러 값을 반환할 수 있습니다. 이러한 데이터 유형을 사용하면 유사한 여러 값을 저장할 수 있습니다. 주 프로그램에서 개별 값을 추출할 수 있습니다. 또는 여러 값을 전달하고 쉼표로 구분할 수 있습니다.

Python 함수는 여러 값을 반환할 수 있습니다. 여러 값을 반환하려면 사전, Python 튜플 또는 목록을 기본 프로그램에 반환할 수 있습니다.

이 가이드에서는 이 두 가지 방법을 사용하여 기본 프로그램에 여러 값을 반환하는 방법에 대해 설명합니다. 시작하겠습니다.

Python:여러 값 반환

다음을 사용하여 Python 함수에서 여러 값을 반환할 수 있습니다.

  • 여러 값이 포함된 목록입니다.
  • 여러 값을 가진 튜플.
  • 여러 레코드가 있는 사전.
  • 쉼표로 구분된 여러 값

위의 모든 데이터 유형을 사용하면 여러 값을 저장할 수 있습니다. 쉼표로 구분된 여러 값을 반환하는 솔루션이 가장 우아합니다. 이는 이 접근 방식이 의도를 명확하게 하기 때문입니다. 즉, 기본 프로그램에 여러 개의 개별 값을 반환하려는 것입니다.

Python return 문은 함수에서 기본 프로그램으로 값을 보냅니다. 이 문은 기본 프로그램에 하나의 값을 반환하는 데 가장 일반적으로 사용됩니다. 기본 프로그램에 여러 값을 반환하는 데 사용할 수 있습니다.

Python:쉼표로 여러 값 반환

반환하려는 값을 쉼표로 구분하여 여러 값을 반환할 수 있습니다. 이 값은 Python return 문 뒤에 나타나야 합니다.

우리는 전자제품 매장에서 발생한 판매량을 계산하는 프로그램을 작성할 것입니다. $500 이상의 매출만 계산합니다. 우리 프로그램은 또한 각 판매의 평균 가치를 계산합니다.

참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.

부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.

시작하기 위해 판매 목록이 포함된 Python 배열을 정의해 보겠습니다.

sales = [59.99, 240.00, 655.25, 75.99]

다음으로 $500 이상의 판매 수와 평균 구매 가치를 계산하는 Python 함수를 작성하십시오.

def calculate_data(sales):
	    over_limit = 0

	    for s in sales:
		         if s > 500:
			             over_limit += 1

	    average_purchase = sum(sales) / len(sales)

	    return over_limit, average_purchase

함수는 for 루프를 사용하여 목록의 모든 판매를 반복합니다. 판매 가치가 $500 이상인 경우 "over_limit" Python 변수가 1씩 증가합니다. 그런 다음 모든 판매의 총 가치를 판매 횟수로 나누어 구매의 평균 가치를 계산합니다.

함수 끝에서 return 문을 사용하여 "over_limit" 및 "average_purchase" 값을 기본 프로그램에 반환합니다.

남은 일은 함수를 호출하고 프로그램이 계산한 데이터를 콘솔에 표시하는 것입니다.

over_limit, average_purchase = calculate_data(sales)
print("{} sales were made over $500. The average purchase was ${}.".format(over_limit, round(average_purchase)))

round()를 사용하여 평균 구매를 소수점 이하 두 자리까지 반올림합니다. 방법. 우리의 코드는 우리가 계산한 값을 알려주는 메시지를 출력합니다. 프로그램을 실행해 보겠습니다.

1 sales were made over $500. The average purchase was $258.

우리 프로그램은 $500 이상의 가치가 있는 판매가 얼마나 되었고 평균 구매 가격이 얼마였는지를 성공적으로 알려줍니다.

이 코드는 "return" 문이 값을 튜플로 변환하고 튜플 목록을 주 프로그램에 반환하기 때문에 작동합니다. 그런 다음 이 튜플을 다음 코드 줄에서 두 개의 변수로 압축을 풉니다.

over_limit, average_purchase = calculate_data(sales)

Python:목록 또는 튜플로 여러 값 반환

목록과 튜플 모두 여러 값을 저장할 수 있습니다. 즉, 이를 사용하여 기본 프로그램에 여러 값을 반환할 수 있습니다.

반환하는 값에 어떤 종류의 관계가 있는 경우 목록이나 튜플을 사용하는 것이 가장 좋습니다. 그러나 이 접근 방식을 사용하여 값 컬렉션을 반환할 수 있습니다.

평균 구매 크기와 $500 이상의 구매 횟수를 기본 프로그램에 반환할 것입니다. 그렇게 하려면 이전 예제를 다시 참조하고 목록을 사용하도록 약간 변경해 보겠습니다.

def calculate_data(sales):
	over_limit = 0
	for s in sales:
		if s > 500:
		over_limit += 1
		average_purchase = sum(sales) / len(sales)

	return [over_limit, average_purchase]

우리는 값을 단일 목록으로 분리했습니다. 목록에는 각각 $500 이상의 구매 횟수와 평균 구매 금액이 포함되어 있습니다.

튜플 데이터 구조를 반환할 수도 있습니다. 그렇게 하려면 대괄호를 중괄호로 바꿉니다. 고려해야 할 가장 큰 요소는 튜플이 중복 값을 포함할 수 없다는 것입니다. 주 프로그램에 전달하는 두 값이 같을 가능성이 있는 경우 튜플을 사용하지 마십시오.

주 프로그램에서 이러한 값에 액세스하려면 인덱싱을 사용해야 합니다.

values = calculate_data(sales)

print("{} sales were made over $500. The average purchase was ${}.".format(values[0], round(values[1])))

values[0] 구문을 사용하여 계산_데이터() 함수가 반환하는 목록의 첫 번째 값에 액세스합니다. 이것은 우리 함수의 "over_limit" 값에 해당합니다. values[1] 구문을 사용하여 평균 구매 가치에 액세스합니다.

코드 반환:

1 sales were made over $500. The average purchase was $258.

코드는 마지막 예제와 동일하게 작동하지만 이번에는 목록을 사용하여 코드의 값을 구분했습니다.

Python:사전으로 여러 값 반환

사전을 사용하여 함수에서 여러 값을 반환할 수 있습니다.

마지막 예에서는 주 프로그램에 두 개의 값만 반환했습니다. 따라서 압축 해제 구문(값을 여러 변수로 "압축 해제")을 사용하는 것이 편리합니다.

더 많은 값으로 작업했다면 각 값을 레이블과 연결하는 사전을 반환하는 것이 더 쉬울 수 있습니다. 사전을 사용하여 기본 프로그램에 여러 값을 반환하도록 마지막 함수를 수정해 보겠습니다.

def calculate_data(sales):
	    over_limit = 0

	    for s in sales:
		         if s > 500:
			             over_limit += 1

	    average_purchase = sum(sales) / len(sales)

	    return { "limit": over_limit, "average": average_purchase }

우리의 함수는 두 개의 키와 값이 있는 사전을 반환합니다. "limit" 및 "average" 키를 사용하여 각 값을 고유하게 식별할 수 있습니다. 이제 이 새로운 구문을 지원하기 위해 함수 호출과 print 문을 수정해야 합니다.

values = calculate_data(sales)
print("{} sales were made over $500. The average purchase was ${}.".format(values["limit"], round(values["average"])))

우리는 사전을 메인 프로그램으로 되돌립니다. 이 사전을 변수 "values"에 할당합니다. 그런 다음 인덱싱을 사용하여 "limit" 및 "average" 값을 검색합니다.

프로그램을 실행해 보겠습니다.

1 sales were made over $500. The average purchase was $258.

우리 프로그램은 이전과 동일한 응답을 반환합니다. 이는 우리가 한 모든 작업이 기본 프로그램에 값을 반환하는 방식이 변경되었기 때문입니다. 계산 논리는 그대로 유지됩니다.

결론

사전, 튜플 또는 목록을 사용하여 함수에서 여러 값을 반환할 수 있습니다. 이러한 데이터 유형을 모두 사용하면 여러 값을 저장할 수 있습니다. 여러 값을 반환하기 위한 특정 구문은 없지만 이러한 메서드는 좋은 대안으로 작용합니다.

작은 값 집합으로 작업하는 경우 쉼표로 구분된 방법이 더 간결하고 이해하기 쉽습니다. 함수에서 더 큰 범위의 값을 반환한다고 가정해 보겠습니다. 사전을 사용하여 기본 프로그램에 여러 값을 다시 보낼 수 있습니다.

Python 프로그래밍 언어를 배우는 여정을 가속화하고 싶습니까? 최고의 Python 과정 및 온라인 학습 리소스에 대한 조언은 Python 학습 방법 가이드를 확인하세요.