Mảng so với Danh sách trong Python – Sự khác biệt là gì? – danh sách hoặc mảng python

Danh sách và mảng trong Python đều được sử dụng để lưu trữ dữ liệu ở định dạng có thể thay đổi và có thứ tự. Vậy, sự khác biệt là gì? Khi nào bạn nên sử dụng mảng Python so với danh sách?

Bạn đang xem : danh sách hoặc mảng python

Cả danh sách và mảng đều được sử dụng để lưu trữ dữ liệu bằng Python. Hơn nữa, cả hai cấu trúc dữ liệu đều cho phép lập chỉ mục, cắt và lặp. Vậy sự khác biệt giữa mảng và danh sách trong Python là gì? Trong bài viết này, chúng tôi sẽ giải thích chi tiết khi nào sử dụng mảng Python so với danh sách.

Python có rất nhiều cấu trúc dữ liệu khác nhau với các tính năng và chức năng khác nhau. Cấu trúc dữ liệu tích hợp của nó bao gồm danh sách , bộ dữ liệu, bộ và từ điển. Tuy nhiên, đây không phải là danh sách đầy đủ các cấu trúc dữ liệu có sẵn trong Python. Một số cấu trúc dữ liệu bổ sung có thể được nhập từ các mô-đun hoặc gói khác nhau.

Cấu trúc dữ liệu mảng thuộc danh mục “phải nhập”. Để sử dụng một mảng trong Python, bạn sẽ cần nhập cấu trúc dữ liệu này từ NumPy gói hoặc mô-đun mảng .

Và đó là sự khác biệt đầu tiên giữa danh sách và mảng. Trước khi tìm hiểu sâu hơn về sự khác biệt giữa hai cấu trúc dữ liệu này, chúng ta hãy xem xét các đặc điểm và chức năng của danh sách và mảng.

Danh sách trong Python là gì?

Danh sách là một cấu trúc dữ liệu được tích hợp trong Python và chứa một tập hợp các mục. Danh sách có một số đặc điểm quan trọng:

  • Các mục danh sách được đặt trong dấu ngoặc vuông, như sau [item1, item2, item3].
  • Danh sách được sắp xếp theo thứ tự – tức là các mục trong danh sách xuất hiện theo một thứ tự cụ thể. Điều này cho phép chúng tôi sử dụng một chỉ mục để truy cập vào bất kỳ mục nào.
  • Danh sách có thể thay đổi , có nghĩa là bạn có thể thêm hoặc xóa các mục sau khi tạo danh sách.
  • Liệt kê các phần tử không cần phải là duy nhất . Có thể trùng lặp mục vì mỗi phần tử có vị trí riêng biệt và có thể được truy cập riêng biệt thông qua chỉ mục.
  • Các phần tử có thể thuộc các kiểu dữ liệu khác nhau : bạn có thể kết hợp chuỗi, số nguyên và đối tượng trong cùng một danh sách.

Danh sách được tạo rất dễ dàng bằng Python:

danh sách = [3, 6, 9, 12]
in (danh sách)
print (gõ (danh sách))
[3, 6, 9, 12]
& lt; lớp 'danh sách' & gt;

Danh sách Python được sử dụng ở mọi nơi vì chúng là một công cụ tuyệt vời để lưu một chuỗi các mục và lặp lại nó.

Xem Thêm  Cách đọc và ghi tệp văn bản trong Java - viết trong tệp văn bản java

Mảng trong Python là gì?

Mảng cũng là một cấu trúc dữ liệu lưu trữ một tập hợp các mục. Giống như danh sách, mảng được có thứ tự , có thể thay đổi , được đặt trong dấu ngoặc vuông và có thể lưu trữ các mục không phải duy nhất .

Nhưng khi nói đến khả năng lưu trữ các kiểu dữ liệu khác nhau của mảng, câu trả lời không đơn giản như vậy. Nó phụ thuộc vào loại mảng được sử dụng.

Để sử dụng mảng trong Python, bạn cần nhập mô-đun mảng hoặc gói NumPy .

nhập mảng dưới dạng arr
nhập numpy dưới dạng np

Mô-đun mảng trong Python yêu cầu tất cả các phần tử mảng phải cùng loại . Hơn nữa, để tạo một mảng, bạn sẽ cần chỉ định một kiểu giá trị. Trong đoạn mã dưới đây, “i” biểu thị rằng tất cả các phần tử trong mảng_1 là số nguyên:

array_1 = arr.array ("i", [3, 6, 9, 12])
in (mảng_1)
print (type (array_1))
mảng ('i', [3, 6, 9, 12])
& lt; class 'array.array' & gt;

Mặt khác, Mảng NumPy hỗ trợ các kiểu dữ liệu khác nhau . Để tạo một mảng NumPy, bạn chỉ cần chỉ định các mục (tất nhiên là được đặt trong dấu ngoặc vuông):

array_2 = np.array (["số", 3, 6, 9, 12])
in (mảng_2)
print (type (array_2))
['số' '3' '6' '9' '12']
& lt; lớp 'numpy.ndarray' & gt;

Như bạn có thể thấy, mảng_2 chứa một mục thuộc loại chuỗi (tức là “số”) và bốn số nguyên.

Vậy sự khác biệt là gì?

Bây giờ chúng ta đã biết các định nghĩa và tính năng của chúng, chúng ta có thể nói về sự khác biệt giữa danh sách và mảng trong Python:

  • Mảng cần được khai báo. Danh sách không, vì chúng được xây dựng trong Python. Trong các ví dụ ở trên, bạn đã thấy rằng danh sách được tạo bằng cách chỉ cần đặt một chuỗi các phần tử vào trong dấu ngoặc vuông. Mặt khác, tạo một mảng yêu cầu một chức năng cụ thể từ mô-đun mảng (tức là, array.array ()) hoặc gói NumPy (tức là, numpy.array ()). Do đó, danh sách được sử dụng thường xuyên hơn mảng.
  • Mảng có thể lưu trữ dữ liệu rất nhỏ gọn và hiệu quả hơn để lưu trữ lượng lớn dữ liệu.
  • Mảng rất tốt cho các phép toán số ; danh sách không thể xử lý trực tiếp các phép toán. Ví dụ: bạn có thể chia từng phần tử của một mảng cho cùng một số chỉ bằng một dòng mã. Nếu bạn thử tương tự với một danh sách, bạn sẽ gặp lỗi.
array = np.array ([3, 6, 9, 12])
chia = mảng / 3
in (chia)
print (type (chia))
[1. 2. 3. 4.]
& lt; lớp 'numpy.ndarray' & gt;
danh sách = [3, 6, 9, 12]
chia = danh sách / 3
-------------------------------------------------- -------------------------
TypeError Traceback (lần gọi gần đây nhất)
 Trong ()
      1 danh sách = [3, 6, 9, 12]
---- & gt; 2 phép chia = danh sách / 3

TypeError: (các) loại toán hạng không được hỗ trợ cho /: 'list' và 'int'

Tất nhiên, có thể thực hiện một phép toán với một danh sách, nhưng nó kém hiệu quả hơn nhiều:

Xem Thêm  Tìm Hiểu Các Trường Đại Học Ở California Mỹ Tại Quận Cam, 10 Trường Đại Học Hàng Đầu Tại California - các trường đại học ở california mỹ

Từ khóa học Cấu trúc dữ liệu Python trong thực tế

Vì vậy, khi nào bạn nên sử dụng danh sách và khi nào bạn nên sử dụng một mảng?

  • Nếu bạn cần lưu trữ một chuỗi các mục tương đối ngắn và bạn không định thực hiện bất kỳ phép toán nào với nó, thì danh sách là lựa chọn ưu tiên. Cấu trúc dữ liệu này sẽ cho phép bạn lưu trữ một chuỗi các mục có thứ tự, có thể thay đổi và được lập chỉ mục mà không cần nhập bất kỳ mô-đun hoặc gói bổ sung nào.
  • Nếu bạn có một chuỗi các mục rất dài, hãy cân nhắc sử dụng mảng . Cấu trúc này cung cấp khả năng lưu trữ dữ liệu hiệu quả hơn.
  • Nếu bạn định thực hiện bất kỳ phép toán số nào với tổ hợp các mục của mình, hãy sử dụng mảng . Phân tích dữ liệu và khoa học dữ liệu chủ yếu dựa vào mảng (chủ yếu là NumPy).

Đã đến lúc thực hành Mảng và Danh sách Python!

Tuyệt vời! Bây giờ bạn đã biết sự khác biệt giữa mảng và danh sách trong Python. Bạn cũng biết phải chọn cái nào cho một chuỗi các mục. Giờ là lúc luyện tập!

Nếu bạn muốn nâng cao hiểu biết của mình về cấu trúc dữ liệu và thực hành hơn 100 bài tập tương tác, hãy xem khóa học LearnPython.com Python Data Structures in Practice < / span>. Nó sẽ giúp bạn cảm thấy như một người chuyên nghiệp khi xử lý danh sách, danh sách lồng nhau, bộ giá trị, bộ và từ điển.


Xem thêm những thông tin liên quan đến chủ đề danh sách hoặc mảng python

Bài 6 Làm việc với danh sách list ,hoặc array trong python | học lập trình python

  • Tác giả: Son Nguyen
  • Ngày đăng: 2018-02-14
  • Đánh giá: 4 ⭐ ( 8805 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: các bạn ơi mình có bán một khóa học python cơ bản dùng tổng hợp kiến thức quan trọng của trương trình đại học các bạn tham khảo và ủng hộ mình ở đây nha: http://python.it2soft.com/
    Khóa học lập trình python mình đã chia thành các phần nhỏ để các bạn xem đỡ chán và dễ tìm kiếm hơn và cứ khoảng 10 video sẽ có một loạt video tổng hợp
    Các bạn có thể tham khảo các khóa học lập trình khác ở đây
    Trí tuệ nhân tạo và nhận dạng ảnh với openCV python https://goo.gl/JknFJs
    Đồ họa máy tính https://goo.gl/azVupr
    Học lập trình C++ cơ bản https://goo.gl/RVWdVT
    Kiến trúc máy tính bài tập: https://goo.gl/CuN3aW
    Cơ sở dữ liệu: https://goo.gl/LtrXdz
    Cấu trúc dữ liệu và giải thuật: https://goo.gl/DgNVfq
    Mọi thắc mắc các bạn có thể liên hệ fb cá nhân: https://www.facebook.com/nhsonit
    Tham ra groups học cntt để thảo luận và chia sẻ nhiều tài liệu: https://www.facebook.com/groups/it2techone/

    lập trình python căn bản,
    lập trình python ứng dụng thực tế,
    lập trình python nâng cao,
    lập trình python trên visual studio,
    lập trình python trên raspberry,
    lập trình python trên ubuntu,
    lập trình python trên windows,
    lập trình python từ zero – hero,
    lập trình python trên sublime text,
    lập trình python trên linux,
    lập trình python,
    lập trình python cơ bản,
    lập trình game bằng python,
    hướng dẫn lập trình python,
    học lập trình python,
    tự học lập trình python,
    lập trình python là gì,
    ngôn ngữ lập trình python,
    lập trình python online,
    python programming lập trình python

Sự khác nhau giữa mảng, tuple, dictionary và set

  • Tác giả: hiepsiit.com
  • Đánh giá: 4 ⭐ ( 7997 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

[Python] Phần 8: Danh sách (List) trong Python

  • Tác giả: www.dammio.com
  • Đánh giá: 3 ⭐ ( 2677 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Kiểu dữ liệu list danh sách trong Python

  • Tác giả: o2.edu.vn
  • Đánh giá: 5 ⭐ ( 7268 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Danh sách trong Python, kiểu list được đặt trong cặp ngoặc vuông [] và có các hàm, phương thức như del pop append remove map filter…

Mảng là gì? Cách sử dụng mảng trong Python – Blog

  • Tác giả: vn.got-it.ai
  • Đánh giá: 3 ⭐ ( 2384 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong bài viết này, bạn sẽ phân biệt mảng trong python với list, tìm hiểu về các thao tác cơ bản với mảng. Đi kèm trong bài viết là các ví dụ giúp bạn dễ hiểu hơn.

Lập trình Python – Danh sách (mảng) trong Python – HourOfCode Vietnam

  • Tác giả: hourofcode.vn
  • Đánh giá: 5 ⭐ ( 6899 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Mảng Trong Python

  • Tác giả: techacademy.edu.vn
  • Đánh giá: 5 ⭐ ( 6419 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Mảng trong Python là loại cấu trúc dữ liệu có thể chứa nhiều giá trị cùng kiểu. Thông thường, chúng bị hiểu sai thành những lists hoặc mảng Numpy. Về mặt kỹ thuật, mảng trong Python khác với cả hai khái niệm trên. Trong bài viết này, hãy cùng tìm hiểu xem mảng trong Python […]

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  Thẻ nội dung HTML: Nắm vững phần tử HTML quan trọng nhất hiện nay » - thẻ tập lệnh html trong nội dung