Hàm python có thể trả về nhiều hơn một giá trị không?

Khi bạn trả về nhiều giá trị bằng cách sử dụng [các] dấu phẩy, chúng sẽ được trả về ở dạng một bộ. Như được hiển thị trong đoạn mã trên, hai chuỗi

{1: 'John', 2: 'Armin'}
73 và
{1: 'John', 2: 'Armin'}
74 được trả về bằng một câu lệnh return

ví dụ 2. Sử dụng từ điển

def name[]:
    n1 = "John"
    n2 = "Armin"

    return {1:n1, 2:n2}

names = name[]
print[names]

đầu ra

{1: 'John', 2: 'Armin'}

Khi bạn trả về các giá trị bằng từ điển, bạn sẽ dễ dàng theo dõi các giá trị được trả về bằng cách sử dụng các phím. Câu lệnh return trả về hai biến ở dạng từ điển

Hàm Python có thể trả về nhiều biến. Các biến này có thể được lưu trữ trực tiếp trong các biến. Một hàm không bắt buộc phải trả về một biến, nó có thể trả về 0, một, hai hoặc nhiều biến

Đây là thuộc tính riêng của Python, các ngôn ngữ lập trình khác như C++ hay Java mặc định không hỗ trợ tính năng này

khóa học liên quan. Hoàn thành khóa học & bài tập lập trình Python

Thí dụ

Giới thiệu

Các biến được định nghĩa trong hàm chỉ được biết trong hàm. Đó là do phạm vi của biến. Nói chung, đó không phải là vấn đề, trừ khi bạn muốn sử dụng đầu ra của hàm trong chương trình của mình

Trong trường hợp đó, bạn có thể trả về các biến từ một hàm. Trong trường hợp đơn giản nhất, bạn có thể trả về một biến duy nhất

1
2
3
def complexfunction[a,b]:
sum = a +b
return sum

Gọi hàm với hàm phức tạp [2,3] và đầu ra của nó có thể được sử dụng hoặc lưu

Nhưng nếu bạn có nhiều biến trong một hàm mà bạn muốn truy cập thì sao?

nhiều trở lại

Tạo một hàm getPerson[]. Như bạn đã biết một hàm có thể trả về một biến nhưng cũng có thể trả về nhiều biến

1] Sử dụng đối tượng. Điều này cũng tương tự với C/C++ và Java, chúng ta có thể tạo một lớp [trong C là struct] để chứa nhiều giá trị và trả về một đối tượng của lớp




{1: 'John', 2: 'Armin'}
75

{1: 'John', 2: 'Armin'}
76

{1: 'John', 2: 'Armin'}
77
{1: 'John', 2: 'Armin'}
78

{1: 'John', 2: 'Armin'}
79
geeksforgeeks
20
0
geeksforgeeks
20
1____42
geeksforgeeks
20
3

geeksforgeeks
20
4
geeksforgeeks
20
2____46
geeksforgeeks
20
7
geeksforgeeks
20
8
geeksforgeeks
20
9

geeksforgeeks
20
4
geeksforgeeks
20
2
{1: 'John', 2: 'Armin'}
62
geeksforgeeks
20
8
{1: 'John', 2: 'Armin'}
64

{1: 'John', 2: 'Armin'}
65

{1: 'John', 2: 'Armin'}
66

geeksforgeeks
20
0
{1: 'John', 2: 'Armin'}
68

{1: 'John', 2: 'Armin'}
79
1
2
3
30
1
2
3
31

1
2
3
32

1
2
3
33

1
2
3
34
geeksforgeeks
20
8
1
2
3
36

1
2
3
37
1
2
3
38
geeksforgeeks
20
7
def complexfunction[a,b]:
sum = a +b
return sum
30

1
2
3
37
def complexfunction[a,b]:
sum = a +b
return sum
32

đầu ra

geeksforgeeks
20

Dưới đây là các phương pháp thú vị dành cho ai đó chuyển đổi thế giới C++/Java

 

2] Sử dụng Tuple. Tuple là một chuỗi các mục được phân tách bằng dấu phẩy. Nó được tạo ra có hoặc không có []. Tuples là bất biến. Xem phần này để biết chi tiết về Tuple và danh sách




{1: 'John', 2: 'Armin'}
75

def complexfunction[a,b]:
sum = a +b
return sum
34

{1: 'John', 2: 'Armin'}
65

def complexfunction[a,b]:
sum = a +b
return sum
36

geeksforgeeks
20
0
{1: 'John', 2: 'Armin'}
68

{1: 'John', 2: 'Armin'}
79
geeksforgeeks
20
7
geeksforgeeks
20
8
geeksforgeeks
20
9

{1: 'John', 2: 'Armin'}
79
{1: 'John', 2: 'Armin'}
754
geeksforgeeks
20
8
{1: 'John', 2: 'Armin'}
64

{1: 'John', 2: 'Armin'}
79
1
2
3
30
geeksforgeeks
20
7
{1: 'John', 2: 'Armin'}
760
{1: 'John', 2: 'Armin'}
761

{1: 'John', 2: 'Armin'}
762
{1: 'John', 2: 'Armin'}
763

{1: 'John', 2: 'Armin'}
65

1
2
3
33

geeksforgeeks
20
7
{1: 'John', 2: 'Armin'}
767
geeksforgeeks
20
8
{1: 'John', 2: 'Armin'}
769
{1: 'John', 2: 'Armin'}
770

1
2
3
37
{1: 'John', 2: 'Armin'}
772______47
def complexfunction[a,b]:
sum = a +b
return sum
30

1
2
3
37
{1: 'John', 2: 'Armin'}
776

đầu ra

geeksforgeeks
20

 

3] Sử dụng danh sách. Một danh sách giống như một mảng các mục được tạo bằng dấu ngoặc vuông. Chúng khác với mảng vì chúng có thể chứa các mục thuộc các loại khác nhau. Danh sách khác với bộ dữ liệu vì chúng có thể thay đổi




{1: 'John', 2: 'Armin'}
75

{1: 'John', 2: 'Armin'}
778

{1: 'John', 2: 'Armin'}
65

{1: 'John', 2: 'Armin'}
780

geeksforgeeks
20
0
{1: 'John', 2: 'Armin'}
68

{1: 'John', 2: 'Armin'}
79
geeksforgeeks
20
7
geeksforgeeks
20
8
geeksforgeeks
20
9

{1: 'John', 2: 'Armin'}
79
{1: 'John', 2: 'Armin'}
788
geeksforgeeks
20
8
{1: 'John', 2: 'Armin'}
64

{1: 'John', 2: 'Armin'}
79
1
2
3
30
{1: 'John', 2: 'Armin'}
793
geeksforgeeks
20
7
{1: 'John', 2: 'Armin'}
795

{1: 'John', 2: 'Armin'}
65

1
2
3
33

{1: 'John', 2: 'Armin'}
798
geeksforgeeks
20
8
1
2
3
36

1
2
3
37
{1: 'John', 2: 'Armin'}
772
{1: 'John', 2: 'Armin'}
798
def complexfunction[a,b]:
sum = a +b
return sum
30

đầu ra

{1: 'John', 2: 'Armin'}
6

 

4] Sử dụng từ điển. Từ điển tương tự như hàm băm hoặc bản đồ trong các ngôn ngữ khác. Xem cái này để biết chi tiết về từ điển




{1: 'John', 2: 'Armin'}
75

geeksforgeeks
20
06

{1: 'John', 2: 'Armin'}
65

geeksforgeeks
20
08

geeksforgeeks
20
0
{1: 'John', 2: 'Armin'}
68

{1: 'John', 2: 'Armin'}
79
geeksforgeeks
20
12
geeksforgeeks
20
8
geeksforgeeks
20
14
geeksforgeeks
20
15

{1: 'John', 2: 'Armin'}
79
geeksforgeeks
20
17____418
geeksforgeeks
20
19
geeksforgeeks
20
8
geeksforgeeks
20
21

{1: 'John', 2: 'Armin'}
79
geeksforgeeks
20
17____424
geeksforgeeks
20
25
geeksforgeeks
20
8
{1: 'John', 2: 'Armin'}
64

{1: 'John', 2: 'Armin'}
79
1
2
3
30
geeksforgeeks
20
12

{1: 'John', 2: 'Armin'}
65

1
2
3
33

geeksforgeeks
20
12
geeksforgeeks
20
8
1
2
3
36

1
2
3
37
geeksforgeeks
20
37

đầu ra

1
2
3
3

 
5] Sử dụng Lớp dữ liệu [Python 3. 7+]. Trong Trăn 3. 7 trở lên, Lớp dữ liệu có thể được sử dụng để trả về một lớp với các phương thức duy nhất được thêm tự động. Mô-đun Lớp dữ liệu có một trình trang trí và các chức năng để tự động thêm các phương thức đặc biệt đã tạo, chẳng hạn như __init__[] và __repr__[] trong các lớp do người dùng định nghĩa.




geeksforgeeks
20
38
geeksforgeeks
20
39
geeksforgeeks
20
40
geeksforgeeks
20
41

{1: 'John', 2: 'Armin'}
65

geeksforgeeks
20
43

{1: 'John', 2: 'Armin'}
77
geeksforgeeks
20
45

{1: 'John', 2: 'Armin'}
79____447
geeksforgeeks
20
7

{1: 'John', 2: 'Armin'}
79____450
geeksforgeeks
20
51

{1: 'John', 2: 'Armin'}
79
geeksforgeeks
20
53
geeksforgeeks
20
54
geeksforgeeks
20
8
geeksforgeeks
20
56

geeksforgeeks
20
57

{1: 'John', 2: 'Armin'}
79
geeksforgeeks
20
59

{1: 'John', 2: 'Armin'}
79
geeksforgeeks
20
0
geeksforgeeks
20
62
geeksforgeeks
20
2____330
geeksforgeeks
20
65
geeksforgeeks
20
66
geeksforgeeks
20
51
geeksforgeeks
20
68

geeksforgeeks
20
4
1
2
3
30
geeksforgeeks
20
2
geeksforgeeks
20
72
geeksforgeeks
20
73
geeksforgeeks
20
2
geeksforgeeks
20
75

1
2
3
32

geeksforgeeks
20
77
geeksforgeeks
20
8
geeksforgeeks
20
79
geeksforgeeks
20
80
geeksforgeeks
20
81
geeksforgeeks
20
82
geeksforgeeks
20
81
geeksforgeeks
20
84
def complexfunction[a,b]:
sum = a +b
return sum
30

{1: 'John', 2: 'Armin'}
788
geeksforgeeks
20
8
geeksforgeeks
20
88

{1: 'John', 2: 'Armin'}
65

geeksforgeeks
20
90

geeksforgeeks
20
91

1
2
3
37
{1: 'John', 2: 'Armin'}
776

{1: 'John', 2: 'Armin'}
65

geeksforgeeks
20
95

1
2
3
37
geeksforgeeks
20
97

{1: 'John', 2: 'Armin'}
65

geeksforgeeks
20
99

{1: 'John', 2: 'Armin'}
600
geeksforgeeks
20
8
{1: 'John', 2: 'Armin'}
602
geeksforgeeks
20
81

{1: 'John', 2: 'Armin'}
604
{1: 'John', 2: 'Armin'}
605
geeksforgeeks
20
8
{1: 'John', 2: 'Armin'}
607
geeksforgeeks
20
81

{1: 'John', 2: 'Armin'}
604
{1: 'John', 2: 'Armin'}
610____48
geeksforgeeks
20
84
def complexfunction[a,b]:
sum = a +b
return sum
30

đầu ra

def complexfunction[a,b]:
sum = a +b
return sum
3

Tham khảo.
http. // stackoverflow. com/questions/354883/how-do-you-return-multiple-values-in-python

Bài viết này được đóng góp bởi Shubham Agrawal. Nếu bạn thích GeeksforGeeks và muốn đóng góp, bạn cũng có thể viết một bài báo và gửi bài viết của mình tới donate@geeksforgeeks. tổ chức. Xem bài viết của bạn xuất hiện trên trang chính của GeeksforGeeks và trợ giúp các Geeks khác

Vui lòng viết bình luận nếu bạn thấy bất cứ điều gì không chính xác hoặc bạn muốn chia sẻ thêm thông tin về chủ đề thảo luận ở trên

Bạn có thể trả về nhiều giá trị từ một hàm trong Python không?

Bạn có thể trả về nhiều giá trị từ một hàm trong Python . Để làm như vậy, hãy trả về cấu trúc dữ liệu chứa nhiều giá trị, chẳng hạn như danh sách chứa số dặm chạy mỗi tuần. Cấu trúc dữ liệu trong Python được sử dụng để lưu trữ các bộ sưu tập dữ liệu, có thể được trả về từ các hàm.

Hàm có thể trả về nhiều hơn một giá trị không?

Chúng ta có thể trả về nhiều hơn một giá trị từ một hàm bằng cách sử dụng phương thức gọi là “gọi theo địa chỉ” hoặc “gọi theo tham chiếu” . Trong hàm Invigner chúng ta sẽ sử dụng 2 biến để lưu kết quả, hàm sẽ lấy dữ liệu kiểu con trỏ. Vì vậy, chúng ta phải chuyển địa chỉ của dữ liệu.

Chủ Đề