Có thể trả về tuple dưới dạng giá trị trong Python không?

Bạn có thể trả về nhiều giá trị bằng cách nhóm các giá trị đó vào từ điển, bộ hoặc danh sách. Các loại dữ liệu này cho phép bạn lưu trữ nhiều giá trị tương tự. Bạn có thể trích xuất các giá trị riêng lẻ từ chúng trong chương trình chính của mình. Hoặc, bạn có thể chuyển nhiều giá trị và phân tách chúng bằng dấu phẩy

Hàm Python có thể trả về nhiều giá trị. Để trả về nhiều giá trị, bạn có thể trả về từ điển, bộ Python hoặc danh sách cho chương trình chính của mình

Có thể trả về tuple dưới dạng giá trị trong Python không?
Có thể trả về tuple dưới dạng giá trị trong Python không?

Tìm trận đấu Bootcamp của bạn

  • Career Karma kết hợp bạn với các bootcamp công nghệ hàng đầu
  • Truy cập học bổng độc quyền và các khóa học chuẩn bị
Chọn sở thích của bạn
Tên

Họ

Email

Điện thoại .


By continuing you agree to our Terms of Service and Privacy Policy, and you consent to receive offers and opportunities from Career Karma by telephone, text message, and email.

Hướng dẫn này thảo luận cách trả về nhiều giá trị cho một chương trình chính bằng hai phương pháp này. Hãy bắt đầu nào

con trăn. Trả về nhiều giá trị

Bạn có thể trả về nhiều giá trị từ một hàm Python bằng cách sử dụng

  • Một danh sách chứa nhiều giá trị
  • Một bộ có nhiều giá trị
  • Một từ điển có nhiều bản ghi
  • Nhiều giá trị được phân tách bằng dấu phẩy

Tất cả các loại dữ liệu trên cho phép bạn lưu trữ nhiều giá trị. Giải pháp trả về nhiều giá trị được phân tách bằng dấu phẩy là thanh lịch nhất. Điều này là do cách tiếp cận này làm cho ý định của bạn rõ ràng. để trả lại nhiều giá trị riêng biệt cho chương trình chính của bạn

Câu lệnh trả về trong Python gửi các giá trị từ hàm đến chương trình chính. Câu lệnh này được sử dụng phổ biến nhất để trả về một giá trị cho chương trình chính. Nó có thể được sử dụng để trả về nhiều giá trị cho một chương trình chính

con trăn. Trả về nhiều giá trị bằng dấu phẩy

Bạn có thể trả về nhiều giá trị bằng cách tách các giá trị bạn muốn trả về bằng dấu phẩy. Các giá trị này sẽ xuất hiện sau câu lệnh trả về Python của bạn

Chúng ta sẽ viết một chương trình tính số lượng hàng bán được tại một cửa hàng điện tử. Chúng tôi sẽ chỉ tính doanh số bán hàng trị giá hơn 500 đô la. Chương trình của chúng tôi cũng sẽ tính toán giá trị trung bình của mỗi lần bán hàng

Để bắt đầu, hãy xác định một mảng Python chứa danh sách bán hàng

sales = [59.99, 240.00, 655.25, 75.99]

Tiếp theo, hãy viết một hàm Python để tính toán số lần bán hàng trị giá hơn 500 đô la và giá trị trung bình của một lần mua hàng

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

Chức năng của chúng tôi lặp lại mỗi lần bán hàng trong danh sách của chúng tôi bằng cách sử dụng vòng lặp for. Nếu một đợt giảm giá trị giá hơn 500 đô la, thì biến Python “over_limit” của chúng tôi sẽ tăng thêm một. Sau đó, chúng tôi tính giá trị trung bình của một lần mua hàng bằng cách chia tổng giá trị của tất cả các lần bán hàng cho số lần bán hàng đã thực hiện

» THÊM.   Python Xóa tệp. Hướng dẫn từng bước

Ở cuối hàm của chúng ta, hãy sử dụng câu lệnh return để trả về các giá trị của “over_limit” và “average_purchase” cho chương trình chính của chúng ta

Tất cả những gì còn lại phải làm là gọi hàm của chúng tôi và hiển thị dữ liệu mà chương trình của chúng tôi tính toán ra bảng điều khiển

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

Chúng tôi làm tròn giao dịch mua trung bình đến hai chữ số thập phân bằng cách sử dụng phương thức round(). Mã của chúng tôi in ra một thông báo thông báo cho chúng tôi về các giá trị mà chúng tôi đã tính toán. Hãy chạy chương trình của chúng tôi

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

Chương trình của chúng tôi cho chúng tôi biết thành công có bao nhiêu lần bán hàng trị giá hơn 500 đô la và giá trung bình của một lần mua hàng là bao nhiêu

Đoạn mã này hoạt động vì câu lệnh “return” biến các giá trị của chúng ta thành một bộ và trả về một danh sách bộ cho chương trình chính của chúng ta. Sau đó, chúng tôi giải nén bộ dữ liệu này thành hai biến trên dòng mã này

over_limit, average_purchase = calculate_data(sales)

con trăn. Trả về nhiều giá trị với một danh sách hoặc Tuple

Cả danh sách và bộ dữ liệu đều cho phép bạn lưu trữ nhiều giá trị. Điều này có nghĩa là chúng ta có thể sử dụng chúng để trả về nhiều giá trị cho chương trình chính của mình

Sử dụng một danh sách hoặc một bộ là tốt nhất nếu các giá trị bạn đang trả về có một số loại mối quan hệ. Tuy nhiên, bạn có thể sử dụng phương pháp này để trả về bất kỳ tập hợp giá trị nào

Chúng tôi sẽ trả lại quy mô mua trung bình và số lượng mua trị giá trên 500 đô la cho chương trình chính của chúng tôi. Để làm như vậy, hãy xem lại ví dụ của chúng tôi từ trước đó và thực hiện một thay đổi nhỏ để sử dụng danh sách

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]

Chúng tôi vừa tách các giá trị của mình thành một danh sách. Danh sách của chúng tôi chứa số lần mua hàng trị giá trên 500 đô la và giá trị của một lần mua hàng trung bình, tương ứng

» THÊM.   Python Pop. Hướng dẫn từng bước

Chúng tôi cũng có thể trả về cấu trúc dữ liệu tuple. Để làm như vậy, chúng tôi sẽ thay thế dấu ngoặc vuông của mình bằng dấu ngoặc nhọn. Yếu tố quan trọng cần xem xét là các bộ dữ liệu không thể chứa các giá trị trùng lặp. Nếu có khả năng hai giá trị bạn chuyển vào chương trình chính của bạn sẽ bằng nhau, hãy tránh sử dụng một bộ

Để truy cập các giá trị này trong chương trình chính của chúng tôi, chúng tôi phải sử dụng lập chỉ mục

values = calculate_data(sales)

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

Chúng tôi sử dụng cú pháp giá trị [0] để truy cập giá trị đầu tiên trong danh sách mà hàm tính toán_data() của chúng tôi trả về. Điều này tương ứng với giá trị của “over_limit” trong chức năng của chúng tôi. Chúng tôi sử dụng cú pháp giá trị [1] để truy cập giá trị của giao dịch mua trung bình

mã của chúng tôi trả về

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

Mã của chúng tôi hoạt động giống như ví dụ trước, nhưng lần này chúng tôi đã sử dụng một danh sách để phân tách các giá trị trong mã của mình

con trăn. Trả về nhiều giá trị bằng từ điển

Chúng ta có thể trả về nhiều giá trị từ một hàm bằng từ điển

Trong ví dụ cuối cùng của chúng tôi, chúng tôi chỉ trả lại hai giá trị cho chương trình chính của mình. Điều này làm cho việc sử dụng cú pháp giải nén trở nên thuận tiện (trong đó bạn “giải nén” các giá trị thành nhiều biến)

Có thể trả về tuple dưới dạng giá trị trong Python không?
Có thể trả về tuple dưới dạng giá trị trong Python không?

"Career Karma bước vào cuộc đời tôi khi tôi cần nó nhất và nhanh chóng giúp tôi phù hợp với bootcamp. Hai tháng sau khi tốt nghiệp, tôi đã tìm được công việc mơ ước phù hợp với giá trị và mục tiêu của mình trong cuộc sống. "

Venus, Kỹ sư phần mềm tại Rockbot

Find Your Bootcamp Match

Nếu chúng tôi đang làm việc với nhiều giá trị hơn, có thể dễ dàng trả về một từ điển liên kết từng giá trị với một nhãn. Hãy sửa lại chức năng cuối cùng của chúng ta để sử dụng một từ điển để trả về nhiều giá trị cho chương trình chính của chúng ta

________số 8

Hàm của chúng tôi trả về một từ điển có hai khóa và giá trị. Các khóa, "giới hạn" và "trung bình", có thể được sử dụng để xác định duy nhất từng giá trị. Bây giờ chúng ta phải sửa lại lệnh gọi hàm và câu lệnh in của mình để hỗ trợ cú pháp mới này

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

Chúng tôi trả lại một từ điển trở lại chương trình chính của chúng tôi. Chúng tôi gán từ điển này cho biến “giá trị”. Sau đó, chúng tôi sử dụng lập chỉ mục để truy xuất các giá trị của “giới hạn” và “trung bình”

» THÊM.   Lỗi cú pháp Python. Thiếu dấu ngoặc đơn trong lệnh gọi 'in' Giải pháp

Hãy chạy chương trình của chúng tôi

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

Chương trình của chúng tôi trả về cùng một phản hồi như trước đó. Điều này được mong đợi bởi vì tất cả những gì chúng tôi đã làm là thay đổi cách chúng tôi trả về các giá trị cho chương trình chính của mình. Logic tính toán của chúng tôi vẫn giữ nguyên

Phần kết luận

Bạn có thể trả về nhiều giá trị từ một hàm bằng cách sử dụng từ điển, bộ dữ liệu hoặc danh sách. Tất cả các loại dữ liệu này đều cho phép bạn lưu trữ nhiều giá trị. Không có cú pháp cụ thể để trả về nhiều giá trị, nhưng các phương thức này đóng vai trò thay thế tốt

Phương thức được phân tách bằng dấu phẩy sẽ ngắn gọn và dễ hiểu hơn nếu bạn đang làm việc với một tập hợp nhỏ các giá trị. Giả sử bạn đang trả về phạm vi giá trị lớn hơn từ một hàm. Bạn có thể muốn sử dụng từ điển để gửi nhiều giá trị trở lại chương trình chính

Bạn có muốn tăng tốc hành trình học ngôn ngữ lập trình Python không?

1 Xếp hạng



Về chúng tôi. Career Karma là một nền tảng được thiết kế để giúp người tìm việc tìm kiếm, nghiên cứu và kết nối với các chương trình đào tạo việc làm để thăng tiến trong sự nghiệp của họ. Tìm hiểu về ấn phẩm CK

Có thể trả về tuple dưới dạng giá trị không?

Nói đúng ra, một hàm chỉ có thể trả về một giá trị, nhưng nếu giá trị đó là một bộ, thì hiệu ứng cũng giống như trả về nhiều giá trị. For example, if you want to divide two integers and compute the quotient and remainder, it is inefficient to compute x//y and then x%y .

Bạn có thể trả về một bộ trong Python không?

Một hàm Python có thể trả về bất kỳ đối tượng nào, chẳng hạn như một bộ . Để trả về một bộ, trước tiên hãy tạo đối tượng bộ trong thân hàm, gán nó cho một biến your_tuple và trả lại nó cho người gọi hàm bằng thao tác từ khóa “ return your_tuple “.

Tuple có thể là một giá trị trong từ điển Python không?

Có, bộ là giá trị có thể băm và có thể được sử dụng làm khóa từ điển . Một bộ sẽ hữu ích như một khóa khi lưu trữ các giá trị được liên kết với lưới hoặc một số hệ thống loại tọa độ khác. Ví dụ mã sau hiển thị một từ điển có các khóa đại diện cho một hệ thống lưới x, y đơn giản.

Chúng ta có thể sử dụng tuple làm giá trị cho từ điển không?

Trong phần này, chúng ta chỉ lấy cặp khóa và giá trị của bộ bằng cách lặp lại và setdafault() được sử dụng để gán giá trị cho khóa tương ứng của từ điển