Loại trừ chỉ mục khỏi danh sách python

Chèn và xóa là một số thao tác quan trọng nhất trong bất kỳ Cấu trúc dữ liệu nào. Trong bài viết này, chúng ta sẽ tập trung vào thao tác xóa một danh sách. Nói chính xác hơn, chúng ta sẽ tìm hiểu cách xóa phần tử cuối cùng của danh sách trong python. Nếu bạn không biết danh sách là gì, bạn có thể muốn xem bài viết của chúng tôi về cách xóa phần tử đầu tiên trong danh sách

Khi nói đến việc lưu trữ và thao tác dữ liệu nhanh chóng trong khi lập trình, danh sách Python là một trong những cấu trúc dữ liệu tuần tự được sử dụng phổ biến nhất. Danh sách là một loại bộ sưu tập giúp đơn giản hóa rất nhiều cuộc sống của các lập trình viên. Loại bỏ phần tử cuối cùng khỏi danh sách loại bỏ phần tử cuối cùng của danh sách bằng cách rút gọn danh sách. Ví dụ: nếu danh sách đã cho là [1, 2, 3, 4] thì danh sách sau khi loại bỏ phần tử cuối cùng là [1,2,3]. Thao tác loại bỏ này làm giảm độ dài của danh sách xuống một. Bây giờ chúng ta hãy xem các phương thức mà chúng ta có thể loại bỏ phần tử cuối cùng của danh sách bằng Python

Làm cách nào để xóa phần tử cuối cùng của danh sách trong Python?

Python cung cấp cho chúng ta một loạt các phương thức, nhờ đó chúng ta có thể đạt được mục tiêu của mình. Trong phần này, chúng ta sẽ thảo luận từng phương pháp một

1. Sử dụng danh sách. phương thức pop()

Thư viện Danh sách chứa một số lượng lớn các phương thức, nhưng phương thức mà chúng ta sẽ sử dụng là một phương thức có tên là Danh sách. nhạc pop(). Phương pháp này có một đối số, chỉ số. Phần tử tại vị trí đã chỉ định bị xóa bằng phương pháp này. Tuy nhiên, đối số này là tùy chọn và nếu không có chỉ mục nào được chỉ định thì phần tử cuối cùng của danh sách sẽ bị xóa. Phương thức trả về phần tử được bật lên. Lưu ý rằng kết quả của hoạt động này là tại chỗ, tôi. e sự thay đổi diễn ra trong chính danh sách

Hàm pop làm tăng IndexError, nếu chúng ta cố bật từ một danh sách trống

Ví dụ

# program to delete the last
# last element from the list 
#using pop method

list = [1,2,3,4,5]
print("Original list: " +str(list))

# call the pop function
# ele stores the element 
#popped (5 in this case)
ele= list.pop()

# print the updated list
print("Updated list: " +str(list))

 

đầu ra

Original list: [1, 2, 3, 4, 5]
Updated list: [1, 2, 3, 4]

 

2. Sử dụng Cắt lát

Python cung cấp một điều khoản để cắt danh sách bằng toán tử chỉ số. Để cắt danh sách, người ta cần cung cấp chỉ mục bắt đầu và kết thúc trong toán tử chỉ số dưới

list[start: end]

 

Chỉ số kết thúc là độc quyền, tôi. e. danh sách con được tạo bởi phương pháp này bao gồm các phần tử từ chỉ mục bắt đầu cho đến chỉ mục kết thúc-1. Nếu chỉ mục bắt đầu không được cung cấp thì các phần tử được chọn từ chỉ mục đầu tiên của danh sách. Và nếu không có chỉ mục kết thúc nào được đưa ra, thì nó sẽ chọn các phần tử cho đến chỉ mục cuối cùng của danh sách

Chúng ta cũng có thể cung cấp chỉ số âm, tuy nhiên, trong trường hợp này, việc đếm chỉ số bắt đầu từ phần tử cuối cùng. Cho phép chúng tôi giải thích về điểm cuối cùng, chỉ mục của phần tử cuối cùng của danh sách là -1 và của phần tử cuối cùng thứ hai là -2, v.v. Vì vậy, để xóa phần tử cuối cùng khỏi danh sách, các phần tử cần được chọn từ chỉ số 0 đến -1

Ví dụ

# program to delete the last
# last element from the list 
#using slicing

list = [1,2,3,4,5]
print("Original list: " +str(list))

# slice the list 
# from index 0 to -1
list = list[ : -1]

# print the updated list
print("Updated list: " +str(list))

 

đầu ra

Original list: [1, 2, 3, 4, 5]
Updated list: [1, 2, 3, 4]

 

Tuy nhiên, cách tiếp cận này có một nhược điểm lớn, nó tạo ra một bản sao của danh sách được cắt lát cần được lưu trữ vào một biến danh sách. Vì lý do này, chúng tôi khuyên bạn không nên sử dụng phương pháp này. Phương pháp này cũng có một ưu điểm, phương pháp này không gây ra lỗi khi áp dụng cho một danh sách trống

3. Sử dụng del

Một cách hiệu quả nhưng đơn giản khác để xóa phần tử cuối cùng của danh sách là sử dụng câu lệnh del. Toán tử del xóa phần tử tại vị trí chỉ mục đã chỉ định khỏi danh sách. Để xóa phần tử cuối cùng, chúng ta có thể sử dụng chỉ số phủ định  -1. Việc sử dụng chỉ mục phủ định cho phép chúng ta xóa phần tử cuối cùng, ngay cả khi không tính toán độ dài của danh sách. Điều này làm giảm đáng kể độ phức tạp của chương trình

Bạn có thể tự hỏi cách tiếp cận này khác với Danh sách như thế nào. phương thức pop()? . Không giống như phương thức pop, toán tử del không trả về phần tử đã xóa. Nhưng giống như phương thức pop, nó làm tăng IndexError khi chúng ta cố gắng xóa một phần tử khỏi danh sách trống hoặc chỉ định một chỉ mục lớn hơn độ dài của danh sách

Ngược lại với phương pháp cắt lát, phương pháp này không trả về danh sách cắt lát. Điều này có nghĩa là những thay đổi được áp dụng trong phương pháp này

Ví dụ

# program to delete the last
# last element from the list 
#using del

list = [1,2,3,4,5]
print("Original list: " +str(list))

# call del operator
del list[-1]

# print the updated list
print("Updated list: " +str(list))

 

đầu ra

Original list: [1, 2, 3, 4, 5]
Updated list: [1, 2, 3, 4]

 

Nhưng nếu bạn muốn xóa hoàn toàn một biến trong python, bạn có thể thực hiện bằng phương thức del()

Phần kết luận

Python được biết đến với cú pháp dễ dàng và các lệnh giống tiếng Anh. Nắm vững các thao tác chèn và xóa là một kỹ năng mà mọi lập trình viên nên có. Trong bài viết này, chúng tôi đã thảo luận về ba phương pháp, cùng với ưu và nhược điểm của chúng, bằng cách sử dụng chúng, chúng tôi có thể xóa phần tử cuối cùng của danh sách. Tuy nhiên, hàm pop() là phương pháp được khuyên dùng và chấp nhận rộng rãi nhất để xóa một phần tử khỏi danh sách

Bạn có thể xóa chỉ mục trong danh sách không?

Phương thức remove(int index) của giao diện Danh sách trong Java được sử dụng để xóa một phần tử khỏi chỉ mục đã chỉ định khỏi bộ chứa Danh sách và trả về phần tử sau khi xóa nó . Nó cũng dịch chuyển các phần tử sau phần tử bị loại bỏ sang trái 1 vị trí trong Danh sách.

Làm cách nào để xóa nhiều phần tử khỏi danh sách trong Python bằng chỉ mục?

Xóa nhiều phần tử khỏi danh sách theo phạm vi chỉ mục bằng cách sử dụng del. Theo phương pháp này, chúng tôi sẽ sử dụng từ khóa del để xóa các phần tử của một phạm vi chỉ mục đã chỉ định khỏi danh sách . Hàm này sẽ xóa tất cả các phần tử từ index1 đến index2-1.