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

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 các 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 là gì và cách triển khai nó nhé!

I. Tại sao lại sử dụng mảng trong Python?

Sự kết hợp của mảng cùng với Python có thể giúp bạn tiết kiệm rất nhiều thời gian. Mảng giúp bạn giảm kích thước tổng thể của code, trong khi Python giúp bạn loại bỏ những cú pháp có vấn đề, điều mà các ngôn ngữ khác không làm được.

Ví dụ: Nếu bạn phải lưu trữ các số nguyên từ 1-100, bạn sẽ không thể nhớ chính xác 100 tên biến. Mảng sẽ giúp bạn lưu trữ chúng một cách dễ dàng.

Mảng trong Python giúp bạn lưu trữ các giá trị dễ dàng
Mảng trong Python giúp bạn lưu trữ các giá trị dễ dàng

Khi đã hiểu tầm quan trọng của mảng trong Python, hãy cùng tiếp tục đi sâu vào các kiến thức chi tiết trong những phần dưới đây.

II. Mảng trong Python là gì?

Mảng về cơ bản là một cấu trúc dữ liệu có thể chứa nhiều giá trị cùng một lúc. Nó là một tập hợp hoặc một loạt các phần tử (có thứ tự) cùng loại. Ví dụ:

a=arr.array('d',[1.2,1.3,2.3])

Chúng ta có thể chạy vòng lặp qua các mảng một cách dễ dàng và tìm nạp các giá trị cần thiết bằng cách xác định số chỉ mục (index number). Mảng cũng có thể thay đổi, do đó, bạn có thể thực hiện các thao tác khác nhau theo yêu cầu.

Tiếp đến, câu hỏi được đặt ra là:

III. List có giống với mảng trong Python không?

Mảng và lists trong Python có điểm tương đồng khi cùng lưu trữ các giá trị. Tuy nhiên, sự khác biệt nằm ở các giá trị mà chúng lưu trữ. Một list có thể lưu trữ bất kỳ loại giá trị nào như số xen kẽ, chuỗi, v.v. Trong khi đó, mảng lưu trữ các giá trị kiểu dữ liệu đơn lẻ. Ví dụ, bạn có thể có một mảng số nguyên, một mảng chuỗi, v.v.

IV. Cách tạo một mảng trong Python

Mảng trong Python có thể được tạo ra sau khi nhập module như sau:

→         import array as arr

Hàm array(data type, value list) nhận hai tham số, tham số đầu tiên là kiểu dữ liệu của giá trị được lưu trữ và tham số thứ hai là list giá trị. Kiểu dữ liệu có thể là bất cứ thứ gì, chẳng hạn như int, float, double, v.v. Bạn hãy lưu ý rằng arr chỉ là tên bí danh (alias) để dễ sử dụng. Bạn cũng có thể nhập mà không cần bí danh. Có một cách khác để nhập module mảng là:

→         from array import *

Dòng này có nghĩa bạn muốn nhập tất cả các hàm từ module mảng.

Dưới đây là cú pháp để tạo một mảng:

Cú pháp:

a=arr.array(data type,value list)       #when you import using arr alias

Hoặc:

 a=array(data type,value list)           	#when you import using *

Ví dụ: a=arr.array( ‘d’ , [1.1 , 2.1 ,3.1] )

Ở đây, tham số đầu tiên là ‘d’, một kiểu dữ liệu float và các giá trị được chỉ định làm tham số tiếp theo.

Ghi chú:
Tất cả các giá trị được chỉ định là kiểu float. Bạn không thể chỉ định các giá trị của các kiểu dữ liệu khác nhau cho một mảng.

Bảng sau đây cho bạn thấy các loại dữ liệu khác nhau và codes của chúng:

Loại codeLoại dữ liệu PythonKích thước (byte)
iint2
Iint2
uunicode character2
hint2
Hint2
lint4
Lint4
ffloat4
dfloat8

V. Truy cập các phần tử của mảng trong Python

Để truy cập các phần tử của mảng, bạn cần chỉ định các giá trị chỉ mục (index values). Việc lập chỉ mục bắt đầu từ 0 chứ không phải từ 1. Do đó, số chỉ mục luôn nhỏ hơn 1 so với độ dài của mảng.

Cú pháp:

Array_name[index value]

Ví dụ:

a=arr.array( 'd', [1.1 , 2.1 ,3.1] )
a[1]

Kết quả: 

2.1

Kết quả trả về là giá trị nằm ở vị trí thứ hai trong mảng: 2.1.

VI. Cách tìm độ dài của một mảng

Độ dài của mảng là số lượng phần tử thực sự có trong một mảng. Bạn có thể sử dụng hàm len () để tìm được độ dài của mảng. Hàm len () sẽ trả về một giá trị nguyên bằng số phần tử có trong mảng đó.

Cú pháp:

→ len(array_name)

Ví dụ:

a=arr.array('d', [1.1 , 2.1 ,3.1] )
len(a)

Kết quả:

3

Kết quả trả về là 3, chính là số phần tử có trong mảng.

VII. Các thao tác cơ bản với mảng

Có rất nhiều thao tác có thể được thực hiện trong mảng:

Các toán từ mảng cơ bản

1. Bổ sung/ Thay đổi các phần tử trong mảng

Chúng ta có thể thêm giá trị vào một mảng bằng cách sử dụng các hàm append (), extend ()insert (i, x).

Hàm append () được sử dụng khi chúng ta cần thêm một phần tử vào cuối mảng.

Ví dụ:

a=arr.array('d', [1.1 , 2.1 ,3.1] )
a.append(3.4)
print(a)

Kết quả:

array(‘d’, [1.1, 2.1, 3.1, 3.4])

Kết quả cho ra một mảng thực tế với giá trị mới được thêm vào cuối nó.

Để bổ sung thêm nhiều phần tử, bạn có thể sử dụng hàm extend (). Hàm này nhận một list các phần tử làm tham số của nó. Nội dung của list này là các phần tử được thêm vào mảng.

Ví dụ:

a=arr.array('d', [1.1 , 2.1 ,3.1] )
a.extend([4.5,6.3,6.8])
print(a)

Kết quả:

array(‘d’, [1.1, 2.1, 3.1, 4.5, 6.3, 6.8])

Kết quả là một mảng chứa tất cả 3 phần tử mới được thêm vào cuối mảng.

Tuy nhiên, khi bạn cần thêm một phần tử cụ thể tại một vị trí xác định trong mảng, hàm insert (i, x) có thể được sử dụng. Hàm này sẽ chèn phần tử vào chỉ mục tương ứng trong mảng. Nó nhận 2 tham số, trong đó tham số đầu tiên là chỉ mục nơi phần tử cần được chèn vào và tham số thứ hai là giá trị.

Ví dụ:

a=arr.array('d', [1.1 , 2.1 ,3.1] )
a.insert(2,3.8)
print(a)

Kết quả:

array(‘d’, [1.1, 2.1, 3.8, 3.1])

Kết quả là một mảng chứa giá trị 3.8 ở vị trí thứ 3.

2. Nối mảng

Mảng cũng có thể được hợp nhất bằng cách thực hiện nối mảng. Bất kỳ hai mảng nào cũng có thể được hợp nhất với ký tự “+”.

Ví dụ:

a=arr.array('d',[1.1 , 2.1 ,3.1,2.6,7.8])
b=arr.array('d',[3.7,8.6])
c=arr.array('d')
c=a+b
print("Array c = ",c)

Kết quả:

Array c= array(‘d’, [1.1, 2.1, 3.1, 2.6, 7.8, 3.7, 8.6])

Có thể thấy, mảng c là sự kết hợp các phần tử của mảng a và b.

3. Xoá bỏ các phần tử của một mảng

Các phần tử của mảng có thể được xóa bằng phương thức pop () hoặc remove (). Sự khác biệt giữa hai hàm này là hàm pop () trả về giá trị đã xóa trong khi hàm remove () thì không.

Hàm pop () không nhận tham số hoặc giá trị chỉ mục làm tham số của nó. Khi không có tham số nào được đưa ra, hàm này lấy phần tử cuối cùng và trả về nó. Khi bạn cung cấp giá trị chỉ mục một cách rõ ràng, hàm pop () lấy các phần tử bắt buộc và trả về nó.

Ví dụ:

a=arr.array('d', [1.1, 2.2, 3.8, 3.1, 3.7, 1.2, 4.6])
print(a.pop())
print(a.pop(3))

Kết quả:

4.6
3.1

Hàm pop () đầu tiên đã lấy đi giá trị 4.6 và trả về kết quả tương tự, trong khi hàm thứ hai lấy phần tử ở vị trí thứ 4 là 3.1.

Hàm remove (), mặt khác, được sử dụng khi chúng ta không cần trả về giá trị đã loại bỏ. Hàm này lấy chính giá trị phần tử làm tham số. Nếu bạn cung cấp giá trị chỉ mục trong vùng tham số, nó sẽ tạo ra lỗi.

Ví dụ:

a=arr.array('d',[1.1 , 2.1 ,3.1])
a.remove(1.1)
print(a)

Kết quả:

array(‘d’, [2.1,3.1])

Kết quả cho ra một mảng chứa các phần tử ngoại trừ giá trị 1.1.

4. Cắt một mảng

Khi bạn muốn lấy một phạm vi giá trị cụ thể từ một mảng, bạn có thể cắt mảng để trả về giá trị tương tự. Một mảng có thể được cắt bằng cách sử dụng ký tự “:”. Kết quả trả về sẽ là một loạt các phần tử mà bạn đã chỉ định bởi các số chỉ mục.

Ví dụ:

a=arr.array('d',[1.1 , 2.1 ,3.1,2.6,7.8])
print(a[0:3])

Kết quả:

array(‘d’, [1.1, 2.1, 3.1])

Kết quả trả về là các phần tử ở vị trí thứ 1, 2, 3 trong mảng.

5. Sử dụng vòng lặp đối với mảng

Sử dụng vòng lặp for, bạn có thể chạy vòng lặp qua một mảng.

Ví dụ:

a=arr.array('d', [1.1, 2.2, 3.8, 3.1, 3.7, 1.2, 4.6])
print("All values")
for x in a:
print(x)
print("specific values")
for x in a[1:3]:
print(x)

Kết quả:

All values

1.1

2.2

3.8

3.1

3.7

1.2

4.6

specific values

2.2

3.8

Kết quả ở trên được hiển thị bằng cách sử dụng vòng lặp for. Khi chúng ta sử dụng vòng lặp for mà không có bất kỳ tham số cụ thể nào, kết quả sẽ chứa tất cả các phần tử của mảng đã cho tại một thời điểm. Trong vòng lặp for thứ hai, kết quả chỉ chứa các phần tử được chỉ định bằng cách sử dụng các giá trị chỉ mục. Lưu ý rằng kết quả không chứa giá trị ở chỉ số 3.


Trên đây là những kiến thức quan trọng nhất về mảng trong Python. Chúng mình hy vọng bài viết này đã giúp bạn nắm bắt được nền tảng cơ bản về mảng và cách sử dụng nó trong Python. Để có thể nâng cao kỹ năng sử dụng Python của mình, bạn có thể tham khảo các bài tập cũng như tài liệu học tại:


Got It Vietnam – Tham khảo: edureka.co

Nếu bạn quan tâm, hãy xem các vị trí đang tuyển dụng của Got It tại: bit.ly/gotit-hanoi và đọc thêm về quy trình tuyển dụng tại đây.

https://d1iv5z3ivlqga1.cloudfront.net/wp-content/uploads/2021/04/29235048/1_QAG9RXQyyMAY7i9OYo84FA.png
Got It Vietnam
September 08, 2021
Share this post to:
Tags:
1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
trackback
Hướng dẫn xóa 1 phần tử trong mảng của Python - Blog | Got It AI
5 months ago

[…] Mảng (array) và list trong Python không phải là cùng một thứ. Mặc dù list được sử dụng nhiều hơn mảng, mảng cũng có nhiều công dụng đáng chú ý. Có một số điểm có thể giúp bạn phân biệt mảng và list. […]

Các bài viết liên quan
Mảng là gì? Cách sử dụng mảng trong Python

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

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 các 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 […]
Trọn bộ hướng dẫn sử dụng PyCharm lập trình Python

Trọn bộ hướng dẫn sử dụng PyCharm lập trình Python

Để viết mã nguồn Python, các lập trình viên có thể sử dụng bất kỳ trình soạn thảo nào. Tuy nhiên, nếu muốn phát triển các ứng dụng một cách hiệu quả, tiết kiệm thời gian và công sức hơn, ta nên sử dụng một IDE (Môi trường phát triển tích hợp). Bài viết này […]
5 bài tập lập trình Python giúp bạn rèn luyện kỹ năng

5 bài tập lập trình Python giúp bạn rèn luyện kỹ năng

Sau khi nhận được nhiều yêu cầu từ bạn đọc về chủ đề “bài tập lập trình Python”, Got It đã sưu tầm những bài tập Python thực sự giúp các bạn đang học ngôn ngữ này, hoặc những người đang làm việc liên quan đến nó, hiểu được cách mà Python hoạt động. Bài […]
4 quyển sách Python tiếng Việt cho người mới bắt đầu

4 quyển sách Python tiếng Việt cho người mới bắt đầu

Bạn muốn tìm hiểu về Python nhưng tìm đâu cũng chỉ thấy sách tiếng Anh? Đừng lo, Got It sẽ dành tặng bạn 4 quyển sách Python tiếng Việt cực kỳ hữu ích ngay trong bài viết này! Cùng khám phá nhé! Mục lụcPython cơ bản… Rất là cơ bản – Võ Tuấn DuyTớ Học […]
Tài liệu lập trình Python tiếng Việt tốt nhất hiện nay

Tài liệu lập trình Python tiếng Việt tốt nhất hiện nay

Nếu bạn đang tìm tài liệu lập trình Python tiếng Việt thì hãy tham khảo ngay ebook “Python cơ bản… Rất là cơ bản” của tác giả Võ Duy Tuấn. Đây là tài liệu cung cấp đầy đủ kiến thức Python cơ bản dành cho người Việt. Hãy cùng Got It khám phá tài liệu […]
6 tips tự học ngôn ngữ lập trình Python hiệu quả

6 tips tự học ngôn ngữ lập trình Python hiệu quả

Tự học ngôn ngữ lập trình Python không phải quá khó, nhưng cũng không hề dễ dàng. Đôi khi, bạn rất dễ nản, chểnh mảng học tập do không có người đốc thúc. Vậy thế nào để học ngôn ngữ này thật hiệu quả? Hãy cùng Got It tìm hiểu 6 tips tự học Python […]