HomeLập trìnhPythonNối trong Python...

Nối trong Python – Cách nối vào Danh sách hoặc Mảng


Trong bài viết này, bạn sẽ tìm hiểu về .append() phương pháp trong Python. Bạn cũng sẽ thấy cách .append() khác với các phương pháp khác được sử dụng để thêm các phần tử vào danh sách.

Bắt đầu nào!

Danh sách trong Python là gì? Định nghĩa cho người mới bắt đầu

Mảng trong lập trình là một tập hợp các mục được sắp xếp theo thứ tự và tất cả các mục cần phải có cùng kiểu dữ liệu.

Tuy nhiên, không giống như các ngôn ngữ lập trình khác, mảng không phải là cấu trúc dữ liệu tích hợp sẵn trong Python. Thay vì các mảng truyền thống, Python sử dụng các danh sách.

Danh sách về cơ bản là các mảng động và là một trong những cấu trúc dữ liệu mạnh mẽ và phổ biến nhất trong Python.

Bạn có thể coi chúng như những thùng chứa được đặt hàng. Họ lưu trữ và tổ chức các loại dữ liệu liên quan tương tự nhau.

Các phần tử được lưu trữ trong danh sách có thể thuộc bất kỳ kiểu dữ liệu nào.

Có thể có danh sách các số nguyên (số nguyên), danh sách số float (số dấu phẩy động), danh sách chuỗi (văn bản) và danh sách của bất kỳ loại dữ liệu Python tích hợp nào khác.

Mặc dù danh sách có thể chứa các mục chỉ có cùng kiểu dữ liệu, nhưng chúng linh hoạt hơn các mảng truyền thống. Điều này có nghĩa là có thể có nhiều loại dữ liệu khác nhau trong cùng một danh sách.

Danh sách có 0 mục trở lên, nghĩa là cũng có thể có danh sách trống. Bên trong một danh sách cũng có thể có các giá trị trùng lặp.

Các giá trị được phân tách bằng dấu phẩy và đặt trong dấu ngoặc vuông, [].

Cách tạo danh sách trong Python

Để tạo một danh sách mới, trước tiên hãy đặt tên cho danh sách. Sau đó thêm toán tử gán (=) và một cặp dấu ngoặc vuông mở và đóng. Bên trong dấu ngoặc, hãy thêm các giá trị mà bạn muốn danh sách chứa.

#create a new list of names
names = ["Jimmy", "Timmy", "Kenny", "Lenny"]

#print the list to the console
print(names)

#output
#['Jimmy', 'Timmy', 'Kenny', 'Lenny']

Cách danh sách được lập chỉ mục trong Python

Danh sách duy trì một thứ tự cho mỗi mục.

Mỗi mục trong bộ sưu tập có một số chỉ mục riêng mà bạn có thể sử dụng để truy cập chính mục đó.

Các chỉ mục trong Python (và mọi ngôn ngữ lập trình hiện đại khác) bắt đầu từ 0 và tăng dần cho mọi mục trong danh sách.

Đọc thêm  Dải Python() – Cách cắt chuỗi hoặc dòng

Ví dụ: danh sách được tạo trước đó có 4 giá trị:

names = ["Jimmy", "Timmy", "Kenny", "Lenny"]

Giá trị đầu tiên trong danh sách, “Jimmy”, có chỉ số là 0.

Giá trị thứ hai trong danh sách, “Timmy”, có chỉ số là 1.

Giá trị thứ ba trong danh sách, “Kenny”, có chỉ số là 2.

Giá trị thứ tư trong danh sách, “Lenny”, có chỉ số là 3.

Để truy cập một phần tử trong danh sách theo số chỉ mục của nó, trước tiên hãy viết tên của danh sách, sau đó viết số nguyên của chỉ mục của phần tử đó trong ngoặc vuông.

Ví dụ: nếu bạn muốn truy cập phần tử có chỉ số là 2, bạn sẽ làm:

names = ["Jimmy", "Timmy", "Kenny", "Lenny"]

print(names[2])

#output
#Kenny

Danh sách trong Python có thể thay đổi

Trong Python, khi các đối tượng được có thể thay đổiđiều đó có nghĩa là giá trị của chúng có thể được thay đổi sau khi chúng được tạo.

Danh sách là các đối tượng có thể thay đổi, vì vậy bạn có thể cập nhật và thay đổi chúng sau khi chúng được tạo.

Các danh sách cũng có tính động, nghĩa là chúng có thể phát triển và thu nhỏ trong suốt vòng đời của một chương trình.

Có thể xóa các mục khỏi danh sách hiện có và có thể thêm các mục mới vào danh sách hiện có.

Có các phương pháp tích hợp sẵn để thêm và xóa các mục khỏi danh sách.

Ví dụ, để cộng các mặt hàng, có các .append(), .insert().extend() các phương pháp.

Đến gỡ bỏ các mặt hàng, có các .remove(), .pop().pop(index) các phương pháp.

những gì làm .append() phương pháp làm gì?

Các .append() phương thức thêm một phần tử bổ sung vào chấm dứt của một danh sách đã tồn tại.

Cú pháp chung trông giống như thế này:

list_name.append(item)

Hãy chia nhỏ nó ra:

  • list_name là tên bạn đã đưa ra danh sách.
  • .append() là phương pháp danh sách để thêm một mục vào cuối list_name.
  • item là mục riêng lẻ được chỉ định mà bạn muốn thêm.

Khi đang sử dụng .append(), danh sách ban đầu được sửa đổi. Không có danh sách mới nào được tạo.

Nếu bạn muốn thêm một tên phụ vào danh sách đã tạo từ trước đó, bạn sẽ làm như sau:

names = ["Jimmy", "Timmy", "Kenny", "Lenny"]

#add the name Dylan to the end of the list
names.append("Dylan")

print(names)

#output
#['Jimmy', 'Timmy', 'Kenny', 'Lenny', 'Dylan']

Đâu là sự khác biệt giữa .append().insert() phương pháp?

Sự khác biệt giữa hai phương pháp là .append() thêm một mục vào chấm dứt của một danh sách, trong khi .insert() chèn và mục ở một vị trí xác định trong danh sách.

Như bạn đã thấy trong phần trước, .append() sẽ luôn thêm mục mà bạn chuyển làm đối số cho hàm vào cuối danh sách.

Đọc thêm  Bộ Python – Hoạt động và ví dụ

Nếu bạn không muốn chỉ thêm các mục vào cuối danh sách, bạn có thể chỉ định vị trí bạn muốn thêm chúng vào. .insert().

Cú pháp chung trông như thế này:

list_name.insert(position,item)

Hãy chia nhỏ nó ra:

  • list_name là tên của danh sách.
  • .insert() là phương thức danh sách để chèn một mục vào danh sách.
  • position là đối số đầu tiên của phương thức. Nó luôn là một số nguyên – cụ thể đó là số chỉ mục của vị trí mà bạn muốn đặt mục mới.
  • item là đối số thứ hai của phương thức. Tại đây bạn chỉ định mục mới mà bạn muốn thêm vào danh sách.

Ví dụ: giả sử bạn có danh sách ngôn ngữ lập trình sau:

programming_languages = ["JavaScript", "Java", "C++"]

print(programming_languages)

#output
#['JavaScript', 'Java', 'C++']

Nếu bạn muốn chèn “Python” vào đầu danh sách, như một mục mới trong danh sách, bạn sẽ sử dụng .insert() phương thức và chỉ định vị trí như . (Hãy nhớ rằng giá trị đầu tiên trong danh sách luôn có chỉ số là 0.)

programming_languages = ["JavaScript", "Java", "C++"]

programming_languages.insert(0, "Python")

print(programming_languages)

#output
#['Python', 'JavaScript', 'Java', 'C++']

Thay vào đó, nếu bạn muốn “JavaScript” là mục đầu tiên trong danh sách và sau đó thêm “Python” làm mục mới, bạn sẽ chỉ định vị trí là 1:

programming_languages = ["JavaScript", "Java", "C++"]

programming_languages.insert(1,"Python")

print(programming_languages)

#output
#['JavaScript', 'Python', 'Java', 'C++']

Các .insert() phương pháp này giúp bạn linh hoạt hơn một chút so với phương pháp .append() phương pháp chỉ thêm một mục mới vào cuối danh sách.

Đâu là sự khác biệt giữa .append().extend() phương pháp?

Nếu bạn muốn thêm nhiều mục vào danh sách cùng một lúc, thay vì thêm từng mục một thì sao?

Bạn có thể dùng .append() phương pháp để thêm nhiều mục vào cuối danh sách.

Giả sử bạn có một danh sách chỉ chứa hai ngôn ngữ lập trình:

programming_languages = ["JavaScript", "Java"]

print(programming_languages)

#output
#['JavaScript', 'Java']

Sau đó, bạn muốn thêm hai ngôn ngữ nữa vào cuối ngôn ngữ đó.

Trong trường hợp đó, bạn chuyển một danh sách chứa hai giá trị mới mà bạn muốn thêm, làm đối số cho .append():

programming_languages = ["JavaScript", "Java"]

#add two new items to the end of the list
programming_languages.append(["Python","C++"])

print(programming_languages)

#output
#['JavaScript', 'Java', ['Python', 'C++']]

Nếu bạn xem xét kỹ hơn đầu ra từ phía trên, ['JavaScript', 'Java', ['Python', 'C++']]bạn sẽ thấy rằng một danh sách mới đã được thêm vào cuối danh sách hiện có.

Cho nên, .append() thêm một danh sách bên trong một danh sách.

Danh sách là các đối tượng và khi bạn sử dụng .append() để thêm một danh sách khác vào một danh sách, các mục mới sẽ được thêm dưới dạng một đối tượng (mục).

Giả sử bạn đã có hai danh sách, như vậy:

names = ["Jimmy", "Timmy"]
more_names = ["Kenny", "Lenny"]

Điều gì sẽ xảy ra nếu muốn kết hợp nội dung của cả hai danh sách thành một, bằng cách thêm nội dung của more_names đến names?

Khi mà .append() được sử dụng cho mục đích này, một danh sách khác được tạo bên trong names:

names = ["Jimmy", "Timmy"]
more_names = ["Kenny", "Lenny"]

#add contents of more_names to names
names.append(more_names)

print(names)

#output
#['Jimmy', 'Timmy', ['Kenny', 'Lenny']]

Cho nên, .append() thêm các phần tử mới dưới dạng một danh sách khác, bằng cách nối thêm đối tượng vào cuối.

Đọc thêm  Cách thiết lập môi trường ảo Python trên Ubuntu 20.04

Để thực sự nối (thêm) các danh sách lại với nhau và kết hợp tất cả các mục từ danh sách này sang danh sách khácbạn cần sử dụng .extend() phương pháp.

Cú pháp chung trông như thế này:

list_name.extend(iterable/other_list_name)

Hãy chia nhỏ nó ra:

  • list_name là tên của một trong các danh sách.
  • .extend() là phương pháp để thêm tất cả nội dung của danh sách này vào danh sách khác.
  • iterable có thể là bất kỳ lần lặp nào, chẳng hạn như một danh sách khác, chẳng hạn, another_list_name. Trong trường hợp đó, another_list_name là một danh sách sẽ được nối với list_namevà nội dung của nó sẽ được thêm từng cái một vào cuối list_namenhư các mục riêng biệt.

Vì vậy, lấy ví dụ từ trước đó, khi .append() được thay thế bằng .extend()đầu ra sẽ như thế này:

names = ["Jimmy", "Timmy"]
more_names = ["Kenny", "Lenny"]

names.extend(more_names)

print(names)

#output
#['Jimmy', 'Timmy', 'Kenny', 'Lenny']

Khi chúng tôi sử dụng .extend()các names danh sách đã được mở rộng và độ dài của nó tăng thêm 2.

Cách .extend() hoạt động là nó lấy một danh sách (hoặc có thể lặp lại khác) làm đối số, lặp qua từng phần tử và sau đó mỗi phần tử trong có thể lặp lại được thêm vào danh sách.

Có một sự khác biệt nữa giữa .append().extend().

Khi bạn muốn thêm một chuỗi, như đã thấy trước đó, .append() thêm toàn bộ, một mục vào cuối danh sách:

names = ["Jimmy", "Timmy", "Kenny", "Lenny"]

#add the name Dylan to the end of the list
names.append("Dylan")

print(names)

#output
#['Jimmy', 'Timmy', 'Kenny', 'Lenny', 'Dylan']

Nếu bạn đã sử dụng .extend() thay vào đó để thêm một chuỗi vào cuối danh sách, mỗi ký tự trong chuỗi sẽ được thêm dưới dạng một mục riêng lẻ vào danh sách.

Điều này là do các chuỗi có thể lặp lại và .extend() lặp lại đối số iterable được truyền cho nó.

Vì vậy, ví dụ ở trên sẽ trông như thế này:

names = ["Jimmy", "Timmy", "Kenny", "Lenny"]

#pass a string(iterable) to .extend()
names.extend("Dylan")

print(names)

#output
#['Jimmy', 'Timmy', 'Kenny', 'Lenny', 'D', 'y', 'l', 'a', 'n']

Phần kết luận

Tóm lại, các .append() phương pháp được sử dụng để thêm một mục vào cuối danh sách hiện có mà không cần tạo danh sách mới.

Khi nó được sử dụng để thêm một danh sách vào một danh sách khác, nó sẽ tạo một danh sách trong một danh sách.

Nếu bạn muốn tìm hiểu thêm về Python, hãy xem Chứng chỉ Python của freeCodeCamp. Bạn sẽ bắt đầu học theo cách tương tác và thân thiện với người mới bắt đầu. Cuối cùng, bạn cũng sẽ xây dựng năm dự án để áp dụng những gì bạn đã học vào thực tế.

Cảm ơn đã đọc và mã hóa hạnh phúc!



Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status