Làm thế nào để bạn trả về một mảng trong python?

Trong Python, chúng ta có thể trả về nhiều giá trị từ một hàm. Sau đây là các cách khác nhau 1) Sử dụng Object. Đ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.  

con trăn




# A Python program to return multiple

# values from a method using class

class Test:

geeksforgeeks
20
0
geeksforgeeks
20
1
geeksforgeeks
20
2
geeksforgeeks
20
3
geeksforgeeks
20
4

geeksforgeeks
20
5
geeksforgeeks
20
3_______0_______7
geeksforgeeks
20
8
geeksforgeeks
20
9
['geeksforgeeks', 20]
0

geeksforgeeks
20
5
geeksforgeeks
20
3_______10_______3
geeksforgeeks
20
9
['geeksforgeeks', 20]
5

 

['geeksforgeeks', 20]
6

geeksforgeeks
20
1
['geeksforgeeks', 20]
8

geeksforgeeks
20
0
{'x': 20, 'str': 'GeeksforGeeks'}
0
{'x': 20, 'str': 'GeeksforGeeks'}
1

geeksforgeeks
20
0

{'x': 20, 'str': 'GeeksforGeeks'}
3

{'x': 20, 'str': 'GeeksforGeeks'}
4
geeksforgeeks
20
9
{'x': 20, 'str': 'GeeksforGeeks'}
6

{'x': 20, 'str': 'GeeksforGeeks'}
7_______20_______8
geeksforgeeks
20
8
900
Book_list(name='Introduction to programming.', perunit_cost=300, quantity_available=3)
0

{'x': 20, 'str': 'GeeksforGeeks'}
7_______30_______2

Đầ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.  

con trăn




# A Python program to return multiple

900
Book_list(name='Introduction to programming.', perunit_cost=300, quantity_available=3)
4

 

900
Book_list(name='Introduction to programming.', perunit_cost=300, quantity_available=3)
5

geeksforgeeks
20
1
['geeksforgeeks', 20]
8

geeksforgeeks
20
0
geeksforgeeks
20
8
geeksforgeeks
20
9
['geeksforgeeks', 20]
0

geeksforgeeks
20
0
42
hello
[1, 2, 3]
3
geeksforgeeks
20
9
['geeksforgeeks', 20]
5

geeksforgeeks
20
0
{'x': 20, 'str': 'GeeksforGeeks'}
0
geeksforgeeks
20
8
42
hello
[1, 2, 3]
9_______213_______0

# A Python program to return multiple1# A Python program to return multiple2

 

{'x': 20, 'str': 'GeeksforGeeks'}
3

geeksforgeeks
20
8_______213_______5
geeksforgeeks
20
9
{'x': 20, 'str': 'GeeksforGeeks'}
6# A Python program to return multiple8

{'x': 20, 'str': 'GeeksforGeeks'}
7_______214_______0
geeksforgeeks
20
8
900
Book_list(name='Introduction to programming.', perunit_cost=300, quantity_available=3)
0

{'x': 20, 'str': 'GeeksforGeeks'}
7_______214_______4

Đầ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.  

con trăn




# A Python program to return multiple

# values from a method using class6

 

# values from a method using class7

geeksforgeeks
20
1
['geeksforgeeks', 20]
8

geeksforgeeks
20
0
geeksforgeeks
20
8
geeksforgeeks
20
9
['geeksforgeeks', 20]
0

geeksforgeeks
20
0
42
hello
[1, 2, 3]
3
geeksforgeeks
20
9
['geeksforgeeks', 20]
5

geeksforgeeks
20
0
{'x': 20, 'str': 'GeeksforGeeks'}
0 Test:0
geeksforgeeks
20
8Test:2

 

{'x': 20, 'str': 'GeeksforGeeks'}
3

Test:4

geeksforgeeks
20
9
{'x': 20, 'str': 'GeeksforGeeks'}
6

{'x': 20, 'str': 'GeeksforGeeks'}
7_______214_______0Test:4
900
Book_list(name='Introduction to programming.', perunit_cost=300, quantity_available=3)
0

Đầu ra

['geeksforgeeks', 20]

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.  

con trăn




# A Python program to return multiple

geeksforgeeks
20
02

 

geeksforgeeks
20
03

geeksforgeeks
20
1
['geeksforgeeks', 20]
8

geeksforgeeks
20
0
geeksforgeeks
20
07_______0_______9
geeksforgeeks
20
09
geeksforgeeks
20
10

geeksforgeeks
20
0
geeksforgeeks
20
12_______0_______13
geeksforgeeks
20
14
geeksforgeeks
20
9
geeksforgeeks
20
16

geeksforgeeks
20
0
geeksforgeeks
20
12
geeksforgeeks
20
19_______0_______14
geeksforgeeks
20
9
['geeksforgeeks', 20]
5

geeksforgeeks
20
0
{'x': 20, 'str': 'GeeksforGeeks'}
0
geeksforgeeks
20
07

 

{'x': 20, 'str': 'GeeksforGeeks'}
3

geeksforgeeks
20
07
geeksforgeeks
20
9
{'x': 20, 'str': 'GeeksforGeeks'}
6

{'x': 20, 'str': 'GeeksforGeeks'}
7_______0_______31

Đầu ra

{'x': 20, 'str': 'GeeksforGeeks'}

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.  

Python3




geeksforgeeks
20
32
geeksforgeeks
20
33
geeksforgeeks
20
34
geeksforgeeks
20
35

 

geeksforgeeks
20
36

class

geeksforgeeks
20
38

geeksforgeeks
20
0
geeksforgeeks
20
40
geeksforgeeks
20
8

geeksforgeeks
20
0
geeksforgeeks
20
43
geeksforgeeks
20
44

geeksforgeeks
20
0
geeksforgeeks
20
46
geeksforgeeks
20
47
geeksforgeeks
20
9
geeksforgeeks
20
49

geeksforgeeks
20
5

geeksforgeeks
20
0
geeksforgeeks
20
52

geeksforgeeks
20
0
geeksforgeeks
20
1
geeksforgeeks
20
55_______0_______3
900
Book_list(name='Introduction to programming.', perunit_cost=300, quantity_available=3)
0
geeksforgeeks
20
58
geeksforgeeks
20
59
geeksforgeeks
20
44_______0_______61

geeksforgeeks
20
5
{'x': 20, 'str': 'GeeksforGeeks'}
0
geeksforgeeks
20
3_______0_______65
geeksforgeeks
20
66
geeksforgeeks
20
3
geeksforgeeks
20
68

geeksforgeeks
20
0

geeksforgeeks
20
70
geeksforgeeks
20
9
geeksforgeeks
20
72
geeksforgeeks
20
73_______0_______74
geeksforgeeks
20
75
geeksforgeeks
20
74
geeksforgeeks
20
77
900
Book_list(name='Introduction to programming.', perunit_cost=300, quantity_available=3)
0

42
hello
[1, 2, 3]
3
geeksforgeeks
20
9
geeksforgeeks
20
81

 

geeksforgeeks
20
82

geeksforgeeks
20
83

{'x': 20, 'str': 'GeeksforGeeks'}
7_______214_______4

 

geeksforgeeks
20
86

{'x': 20, 'str': 'GeeksforGeeks'}
7_______0_______88

 

geeksforgeeks
20
89

geeksforgeeks
20
90
geeksforgeeks
20
9
geeksforgeeks
20
92
geeksforgeeks
20
74

geeksforgeeks
20
5
geeksforgeeks
20
95
geeksforgeeks
20
9
geeksforgeeks
20
97
geeksforgeeks
20
74

geeksforgeeks
20
5
['geeksforgeeks', 20]
00
geeksforgeeks
20
9
geeksforgeeks
20
77
900
Book_list(name='Introduction to programming.', perunit_cost=300, quantity_available=3)
0

Đầu ra

900
Book_list(name='Introduction to programming.', perunit_cost=300, quantity_available=3)

6. Sử dụng 'năng suất'

Một cách tiếp cận khác để trả về nhiều giá trị từ một hàm trong Python là sử dụng từ khóa suất trong hàm tạo. Hàm tạo là một loại hàm đặc biệt trả về một đối tượng trình vòng lặp, tạo ra một chuỗi các giá trị một cách nhanh chóng, mỗi lần một giá trị

Để trả về nhiều giá trị từ hàm tạo, bạn có thể sử dụng từ khóa suất để lần lượt trả về từng giá trị. Sau đó, hàm tạo sẽ tạm dừng thực thi cho đến khi giá trị tiếp theo được yêu cầu, tại thời điểm đó, hàm sẽ tiếp tục thực thi và mang lại giá trị tiếp theo. Quá trình này tiếp tục cho đến khi hàm tạo hoàn thành thực thi hoặc gặp câu lệnh trả về

Đây là một ví dụ về cách điều này có thể được thực hiện

Python3




geeksforgeeks
20
1
['geeksforgeeks', 20]
05

geeksforgeeks
20
0
['geeksforgeeks', 20]
07
['geeksforgeeks', 20]
08

geeksforgeeks
20
0
['geeksforgeeks', 20]
07
['geeksforgeeks', 20]
11

geeksforgeeks
20
0
['geeksforgeeks', 20]
07 Test:0
['geeksforgeeks', 20]
15
geeksforgeeks
20
74
['geeksforgeeks', 20]
17
geeksforgeeks
20
74
geeksforgeeks
20
77
geeksforgeeks
20
14

 

['geeksforgeeks', 20]
21

['geeksforgeeks', 20]
22______0_______9
['geeksforgeeks', 20]
24

{'x': 20, 'str': 'GeeksforGeeks'}
7_______214_______0
['geeksforgeeks', 20]
27
['geeksforgeeks', 20]
28
['geeksforgeeks', 20]
29

{'x': 20, 'str': 'GeeksforGeeks'}
7_______214_______0
['geeksforgeeks', 20]
27
['geeksforgeeks', 20]
28
['geeksforgeeks', 20]
34

{'x': 20, 'str': 'GeeksforGeeks'}
7_______214_______0
['geeksforgeeks', 20]
27
['geeksforgeeks', 20]
28
['geeksforgeeks', 20]
39

Đầu ra

42
hello
[1, 2, 3]

Độ phức tạp về thời gian. O(1) vì nó chỉ thực hiện một số lượng hoạt động (sản lượng) không đổi bất kể kích thước của đầu vào
không gian phụ trợ. O(1) vì nó chỉ lưu trữ một số biến (giá trị mang lại) không đổi trong bộ nhớ tại bất kỳ thời điểm nào

Thẩm quyền giải quyết. 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 review-team@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

Làm cách nào tôi có thể trả về một mảng?

Bạn không thể trả về một mảng , bạn có thể trả về một con trỏ tới nó. Tuy nhiên, mảng không nên là mảng tự động, vì nó sẽ không còn tồn tại khi hàm gọi tham chiếu đến con trỏ. Nếu kích thước của mảng là cố định, bạn có thể chọn khai báo mảng bên trong một cấu trúc.

Trả về () trong Python là gì?

Định nghĩa và cách sử dụng. Từ khóa trả về là để thoát khỏi hàm và trả về giá trị .