Mảng Python cung cấp một cách hiệu quả để lưu trữ nhiều giá trị cùng loại trong một biến duy nhất. Trong hướng dẫn này, bạn tìm hiểu mảng Python là gì và cách sử dụng chúng, cũng như sự khác biệt giữa danh sách Python và mảng. Bạn cũng tìm hiểu cách lặp qua một mảng, thêm và xóa các phần tử khỏi một mảng và cách kết hợp các giá trị được lưu trữ trong các mảng khác nhau
Mảng trong Python là gì?
Trong Python, một mảng là một tập hợp các đối tượng được sắp xếp theo thứ tự, tất cả đều cùng loại. Những đặc điểm này mang lại cho mảng hai lợi ích chính. Đầu tiên, các mục trong một mảng có thể được xác định một cách nhất quán bởi chỉ mục hoặc vị trí của chúng trong mảng. Thứ hai, các mục trong một mảng được đảm bảo cùng loại
Khi tạo mảng trong Python, bạn phải chỉ định loại dữ liệu sẽ được lưu trữ. Các loại có sẵn được biểu thị bằng mã, bao gồm các loại sau
Loại CodeC TypePython TypeMin. Bytes'b'signed charint1'B'unsigned charint1'u'wchar_tUnicode character2'h'signed shortint2'H'unsigned shortint2'i'signed intint2'I'unsigned intint2'l'signed longint4'L'unsigned longint4'q'signedTuy nhiên, nói chung, đối với các mảng chứa số, bạn có thể tập trung vào việc chỉ sử dụng hai trong số các mã có sẵn. Sử dụng mã
2
6 cho mảng chứa số nguyên. Sử dụng mã 2
7 cho các mảng chứa số dấu phẩy độngBạn có thể xem một ví dụ cho thấy cách sử dụng mã để khởi tạo một mảng ở đầu phần của hướng dẫn này
Mảng Python vs. danh sách
Thông thường, mọi người nói về mảng trong Python thực sự đang đề cập đến danh sách Python. Mặc dù danh sách và mảng có một số điểm tương đồng trong Python, nhưng chúng là hai loại tập hợp riêng biệt
Sự khác biệt chính giữa danh sách và mảng là mảng hạn chế loại đối tượng mà nó có thể lưu trữ. Danh sách không cung cấp cho bạn cách giới hạn các loại đối tượng mà chúng chứa. Khi sử dụng một mảng, bạn có thể chắc chắn rằng nó chỉ chứa loại được chỉ định khi tạo
Một danh sách Python duy nhất có thể lưu trữ đồng thời các số nguyên, chuỗi và từ điển. Bạn thậm chí có thể thêm nhiều phần tử của các loại khác vào danh sách hiện có. Ngược lại, các phần tử trong mảng Python chỉ có thể thuộc một loại. Một mảng các số nguyên chỉ có thể chứa các số nguyên và chỉ có thể có các số nguyên khác được thêm vào nó
Tuy nhiên, ngoài sự khác biệt này, bạn thường có thể điều hướng và sửa đổi các mảng và danh sách theo cùng một cách. Tất cả các thao tác được nêu chi tiết bên dưới đối với mảng, ngoại trừ chính hàm
2
8, cũng có thể được áp dụng cho danh sáchCách sử dụng mảng trong Python
Một số phần tiếp theo của hướng dẫn này chỉ cho bạn cách làm việc với mảng trong Python. Python có rất nhiều thao tác có thể giúp bạn sử dụng mảng một cách hiệu quả. Các phần bên dưới trình bày các thao tác phổ biến nhất mà bạn có thể cần thực hiện trên mảng
Tất cả các ví dụ để làm theo hoạt động của một mảng số nguyên đơn giản được tạo bằng mã Python sau
from array import *
example_array = array["i", [2, 4, 6, 8]]
Ghi chú
Mô-đun mảng không được tải theo mặc định trong Python. Thay vào đó, bạn cần nhập mô-đun để bắt đầu làm việc với mảng
Có hai cách bạn có thể tương tác với nội dung của một mảng. thông qua ký hiệu lập chỉ mục của Python hoặc thông qua vòng lặp. Mỗi trong số này được đề cập trong các phần tiếp theo
Chỉ số mảng và lát Python
Các phần tử riêng lẻ của một mảng có thể được truy cập bằng các chỉ số. Các chỉ số mảng bắt đầu từ
2
9. Điều này có nghĩa là phần tử đầu tiên của một mảng được gán chỉ số là 2
9 và chỉ số của mỗi phần tử tiếp theo sẽ tăng dần từ đóVì vậy, để truy cập các phần tử thứ nhất, thứ hai và thứ ba của
example_array[1]
1, bạn sử dụng ký hiệu chỉ mục sauexample_array[0]
2
example_array[1]
4
example_array[2]
6
Bạn cũng có thể sử dụng số âm làm chỉ số. Khi bạn sử dụng một số âm làm chỉ mục, Python sẽ đếm ngược qua mảng, bắt đầu bằng
example_array[1]
2 là mục cuối cùng trong mảng. Ví dụ sau truy cập giá trị cuối cùng được lưu trữ trong example_array[1]
1example_array[-1]
8
Python hỗ trợ lập chỉ mục nâng cao hơn thông qua ký hiệu lát của nó. Cắt lát cho phép bạn chọn một loạt các phần tử từ một mảng
Cú pháp cho ký hiệu lát là như sau
[start:stop:step]
example_array[1]
4 xác định chỉ mục đầu tiên của phạm vi và example_array[1]
5 xác định chỉ mục cuối cùng. Phần example_array[1]
6 là tùy chọn. Nó được sử dụng để xác định có bao nhiêu yếu tố sẽ tiến triển trong khi di chuyển qua phạm vi example_array[1]
4 và example_array[1]
5. Theo mặc định, giá trị của example_array[1]
9 là 4
0Ví dụ tiếp theo cắt phạm vi từ chỉ mục
2
9 đến chỉ mục 4
2. Nó tiến triển qua phạm vi này bằng cách sử dụng _______10_______3 bước mỗi lần, nghĩa là nó bỏ qua mọi mục khácexample_array[0]
0example_array[0]
1Ký hiệu lát cắt Python là một công cụ mạnh mẽ có thể được sử dụng để thực hiện nhiều thao tác phức tạp hơn so với trình bày trong hướng dẫn này. Để xem thêm ví dụ với các giải thích chuyên sâu, hãy xem hướng dẫn của chúng tôi Cách cắt và lập chỉ mục chuỗi trong danh sách Python và Python và cách sử dụng chúng. Mặc dù các hướng dẫn này không xử lý trực tiếp mảng Python, nhưng các khái niệm này cũng áp dụng tốt như nhau
Lặp qua các phần tử mảng
Mảng Python có thể được lặp lại bằng cách sử dụng vòng lặp
4
4. Điều này cung cấp một cách thuận tiện để thực hiện hành động trên từng phần tử trong một mảng. Mỗi vòng lặp tạo ra một biến — trong ví dụ là 4
5 — tương ứng với một phần tử trong mảngexample_array[0]
2Đầu ra trả về giá trị của mọi phần tử trong mảng
example_array[0]
3Sử dụng hàm
4
6, bạn đồng thời lặp qua các phần tử và chỉ số của chúngexample_array[0]
4Hàm
4
7 trả về số lần lặp hiện tại [được lưu trong biến 2
6] và giá trị của lần lặp hiện tại [được lưu trong biến 4
5]. Vì các chỉ số mảng bắt đầu từ 2
9, nên câu lệnh bên trong vòng lặp sẽ thêm 4
0 vào giá trị của bộ đếm 2
6 để tính chỉ số hiện tạiexample_array[0]
5Đầu ra trả về số chỉ mục của phần tử hiện tại trong mảng cùng với giá trị của chính nó. Chỉ mục và giá trị được phân tách bằng dấu _____11_______3 như được chỉ ra trong câu lệnh in của hàm
4
7Sửa đổi mảng Python
Python cũng cung cấp các cách sửa đổi nội dung của một mảng, cho dù bạn cần thêm hay xóa các phần tử. Thậm chí còn có một cách để kết hợp nhiều mảng. Các phần tiếp theo này chỉ cho bạn cách thực hiện tất cả các thao tác này, làm việc với cùng một mảng ví dụ như trên
Thêm một phần tử vào một mảng
Mảng Python bao gồm hai phương thức tích hợp để thêm phần tử mới. Bạn sử dụng phương thức nào tùy thuộc vào vị trí trong mảng mà bạn muốn phần tử mới được thêm vào
Sử dụng phương thức
example_array[2]
5 để thêm phần tử mới vào cuối mảng. Ví dụ dưới đây thêm số nguyên example_array[2]
6 làm phần tử mới vào cuối example_array[1]
1example_array[0]
6Mảng
example_array[1]
1 bây giờ cũng chứa số nguyên example_array[2]
6example_array[0]
7Sử dụng phương thức
6
0 để thêm một phần tử mới vào một vị trí cụ thể trong một mảng. Phương thức chấp nhận hai tham số; Ví dụ dưới đây sử dụng phương thức
6
0 để đặt số nguyên 6
2 vào vị trí chỉ mục của example_array[1]
1 4
2example_array[0]
8In mảng xác nhận rằng nó hiện chứa số nguyên
6
2 ở vị trí chỉ mục 4
2example_array[0]
9Xóa phần tử khỏi mảng
Mảng Python bao gồm hai phương thức tích hợp sẵn mà bạn có thể sử dụng để xóa các phần tử khỏi một mảng. Phương pháp bạn chọn tùy thuộc vào việc bạn muốn xóa một phần tử dựa trên một giá trị nhất định hay một chỉ mục nhất định
Phương thức
6
7 lấy tham số là giá trị cần xóa khỏi mảng. Trong ví dụ sau, phương thức 6
7 xóa số nguyên 6
2 khỏi example_array[1]
1. Số nguyên này đã được thêm vào mảng trong phần trước2
0Đầu ra xác nhận rằng
example_array[1]
1 không còn chứa 6
2example_array[0]
7Mặt khác, phương pháp
example_array[-1]
3 có thể được sử dụng để loại bỏ các phần tử dựa trên chỉ mục. Ví dụ tiếp theo này sử dụng chỉ mục example_array[1]
2 để xóa phần tử cuối cùng trong mảng, đây là một trong những phần tử được thêm vào trong phần trước2
22
3Phương thức
example_array[-1]
3 trả về giá trị của phần tử đã bị xóa. Đây là lý do tại sao đầu ra hiển thị số nguyên example_array[2]
6. Điều này hữu ích nếu, ví dụ, bạn muốn lưu trữ giá trị của phần tử đã xóa trong một biến mớiKết hợp mảng
Các mảng trong Python có thể được kết hợp hoặc nối với nhau bằng cách sử dụng toán tử
example_array[-1]
7. Có nhiều cách khác để kết hợp các mảng — chẳng hạn như sử dụng một vòng lặp. Nhưng toán tử example_array[-1]
7 cung cấp phương pháp thuận tiện nhất nếu mục tiêu của bạn chỉ đơn giản là nối hai hoặc nhiều mảngTrong ví dụ dưới đây,
example_array[1]
1 được kết hợp với một mảng mới, 8
0 và được lưu trữ trong 8
12
4In
8
1 xác nhận rằng nó hiện chứa tất cả các giá trị được lưu trữ trong hai mảng được nối2
5Phần kết luận
Mảng Python là một loại tập hợp có thể lưu trữ nhiều giá trị. Mỗi giá trị có thể được truy cập bằng ký hiệu chỉ mục. Mặc dù mảng Python tương tự như danh sách, nhưng nó khác ở chỗ bạn chỉ có thể lưu trữ các giá trị cùng loại trong một mảng. Mảng cũng có các phương thức tích hợp giúp bạn thêm và xóa các phần tử. Bạn cũng có thể kết hợp hai mảng bằng cách sử dụng toán tử
example_array[-1]
7Thêm thông tin
Bạn có thể muốn tham khảo các tài nguyên sau để biết thêm thông tin về chủ đề này. Mặc dù chúng được cung cấp với hy vọng rằng chúng sẽ hữu ích, xin lưu ý rằng chúng tôi không thể đảm bảo tính chính xác hoặc kịp thời của các tài liệu được lưu trữ bên ngoài