Danh sách Python xóa phần tử theo giá trị
Kiểu dữ liệu Danh sách Python giúp bạn lưu trữ các mục thuộc các loại dữ liệu khác nhau theo trình tự có thứ tự. Dữ liệu được ghi bên trong dấu ngoặc vuông ([]) và các giá trị được phân tách bằng dấu phẩy (,) Show
Trong Python, có rất nhiều phương thức có sẵn trên kiểu dữ liệu danh sách giúp bạn loại bỏ một phần tử khỏi một danh sách nhất định. Các phương thức là remove(), pop() và clear() Trong bài viết này, chúng tôi sẽ thảo luận về các cách khác nhau để xóa một phần tử khỏi danh sách Xóa một phần tử khỏi Danh sách theo giá trị bằng cách sử dụng danh sách. di dời()Danh sách của Python cung cấp một hàm thành viên để xóa một phần tử khỏi danh sách i. e list.remove(value) Nó loại bỏ sự xuất hiện đầu tiên của phần tử đã cho khỏi danh sách Ví dụ, Giả sử chúng ta có một danh sách các số i. e # List of numbers listOfnum = [12, 44, 56, 45, 34, 3, 56, 4, 33, 44, 56] Hãy xóa 56 khỏi danh sách đã cho bằng cách sử dụng danh sách. loại bỏ() tôi. e Đọc thêm
# Remove first occurrence of 56 from List listOfnum.remove(56) Nó sẽ xóa lần xuất hiện đầu tiên của 56 khỏi danh sách trên. Danh sách nội dung sẽ được ngay bây giờ, [12, 44, 45, 34, 3, 56, 4, 33, 44, 56] Nếu chúng ta cố xóa phần tử không tồn tại trong danh sách thì hãy liệt kê. remove() sẽ ném ngoại lệ Kiểm tra xem phần tử có tồn tại trong danh sách i không. e # Check if element exist in List, before removing if 99 in listOfnum: listOfnum.remove(99) else: print("Given Element Not Found in List") Hoặc sử dụng thử / ngoại trừ tôi. e # If given element doesn't exists in list, then remove() can throw Error # Therefore use try / except while calling list.remove() try : listOfnum.remove(99) except ValueError: print("Given Element Not Found in List") Những bài viết liên quan
Xóa một phần tử khỏi Danh sách theo Chỉ mục bằng cách sử dụng danh sách. nhạc pop()list.pop(index) Trong danh sách python, hàm pop() sẽ xóa phần tử tại chỉ mục đã cho và cũng trả về phần tử đã xóa Ví dụ như, Chúng tôi có một danh sách các int tôi. e # List of numbers listOfnum = [12, 44, 12, 56, 45, 34, 3, 56, 4, 33, 44, 56] Hãy loại bỏ phần tử tại chỉ số 2 ________số 8_______Nội dung của danh sách sẽ là bây giờ [12, 44, 56, 45, 34, 3, 56, 4, 33, 44, 56] Giá trị trả về là 12 i. e. phần tử đã xóa danh sách. pop() và Lỗi thời gian chạy Nếu danh sách. pop() được gọi là chỉ mục nằm ngoài ranh giới của Danh sách thì nó sẽ tạo ra lỗi thời gian chạy # List of numbers listOfnum = [12, 44, 56, 45, 34, 3, 56, 4, 33, 44, 56]0 hoặc Sử dụng thử/ngoại trừ # List of numbers listOfnum = [12, 44, 56, 45, 34, 3, 56, 4, 33, 44, 56]1 Xóa một phần tử khỏi Danh sách bằng delTrong python del là một từ khóa và có thể được sử dụng để xóa phần tử trong danh sách theo chỉ mục i. e # List of numbers listOfnum = [12, 44, 56, 45, 34, 3, 56, 4, 33, 44, 56]2 Nó sẽ xóa phần tử ở chỉ số 2 trong danh sách Nếu del list[index] được gọi trên một chỉ mục nằm ngoài ranh giới của Danh sách thì nó sẽ tạo ra lỗi thời gian chạy # List of numbers listOfnum = [12, 44, 56, 45, 34, 3, 56, 4, 33, 44, 56]3 hoặc Sử dụng thử/ngoại trừ # List of numbers listOfnum = [12, 44, 56, 45, 34, 3, 56, 4, 33, 44, 56]4 Ví dụ hoàn chỉnh như sau, # List of numbers listOfnum = [12, 44, 56, 45, 34, 3, 56, 4, 33, 44, 56]5 đầu ra # List of numbers listOfnum = [12, 44, 56, 45, 34, 3, 56, 4, 33, 44, 56]6
quảng cáo Cảm ơn vì đã đọc Bài viết này sẽ thảo luận về các cách khác nhau để loại bỏ lần đầu tiên hoặc tất cả các lần xuất hiện của một phần tử khỏi danh sách theo giá trị
con trăn. Xóa lần xuất hiện đầu tiên của phần tử khỏi danh sách theo giá trịTrong Python, lớp list cung cấp hàm remove(value) để xóa một phần tử khỏi danh sách. Nó chấp nhận một giá trị làm đối số và xóa lần xuất hiện đầu tiên của giá trị đó khỏi danh sách. Nhưng nếu giá trị đã cho không tồn tại trong danh sách, thì nó sẽ làm tăng ValueError Bây giờ, hãy sử dụng hàm remove() để xóa lần xuất hiện đầu tiên của phần tử 52 khỏi danh sách các số, list_of_num = [51, 52, 53, 54, 55, 52, 57, 52, 59] # Remove first occurrence of 52 from list list_of_num.remove(52) print(list_of_num) đầu ra [51, 53, 54, 55, 52, 57, 52, 59] Danh sách có nhiều lần xuất hiện là 52, nhưng hàm remove() chỉ xóa lần xuất hiện đầu tiên con trăn. Xóa phần tử khỏi danh sách theo giá trị nếu tồn tạiNếu chúng ta gọi hàm remove() để xóa một phần tử không tồn tại trong danh sách thì sao? . Ví dụ, Đọc thêm
list_of_num = [51, 52, 53, 54, 55, 52, 57, 52, 59] list_of_num.remove(70) đầu ra list_of_num.remove(70) ValueError: list.remove(x): x not in list Chúng tôi đang cố xóa một phần tử có giá trị 72 khỏi danh sách, nhưng danh sách không có giá trị đó. Do đó, nó đã làm tăng lỗi giá trị. Đầu tiên chúng ta nên kiểm tra xem phần tử có tồn tại trong danh sách hay không trước khi gọi hàm remove(). Ví dụ, list_of_num = [51, 52, 53, 54, 55, 52, 57, 52, 59] elem = 70 if elem in list_of_num: list_of_num.remove(elem) print(list_of_num) đầu ra [51, 52, 53, 54, 55, 52, 57, 52, 59] con trăn. Xóa tất cả các lần xuất hiện của một phần tử khỏi danh sách theo giá trịNhư chúng ta đã thấy trong các ví dụ trước, hàm remove() luôn xóa phần tử xuất hiện đầu tiên khỏi danh sách. Để xóa tất cả các lần xuất hiện của một phần tử, chúng ta cần gọi hàm remove() trong một vòng lặp, cho đến khi tất cả các lần xuất hiện không bị xóa. Ví dụ, def remove_all_occurrences(list_obj, value): while value in list_obj: list_of_num.remove(value) list_of_num = [51, 52, 52, 55, 55, 52, 57, 52, 55] remove_all_occurrences(list_of_num, 52) print(list_of_num) đầu ra [51, 55, 55, 57, 55] Nó đã xóa tất cả các lần xuất hiện của 52 khỏi danh sách các số con trăn. Xóa tất cả các lần xuất hiện của nhiều phần tử khỏi danh sách theo giá trịTrong ví dụ trước, chúng tôi đã xóa tất cả các lần xuất hiện của một phần tử khỏi danh sách. Vì vậy, chúng ta có thể sử dụng logic tương tự để xóa tất cả các lần xuất hiện của nhiều phần tử khỏi danh sách Giả sử chúng tôi có một danh sách các số và chúng tôi có một danh sách giá trị khác mà chúng tôi muốn xóa cho danh sách ban đầu. Chúng tôi muốn xóa tất cả các phần tử của list2 khỏi list1 Chúng tôi đã tạo một chức năng riêng biệt cho cùng một chức năng, nó chấp nhận hai danh sách khác nhau làm đối số,
Đối với mỗi phần tử của danh sách thứ hai, nó sẽ xóa tất cả các lần xuất hiện khỏi danh sách ban đầu. Hãy hiểu bằng một ví dụ, def remove_all_by_values(list_obj, values): for value in values: while value in list_obj: list_of_num.remove(value) list_of_num = [51, 52, 52, 55, 55, 52, 57, 52, 55, 61, 62] remove_all_by_values(list_of_num, [52, 55, 57]) print(list_of_num) đầu ra [51, 61, 62] Nó đã xóa tất cả các lần xuất hiện của 52, 55 và 57 khỏi danh sách Bản tóm tắtTrong bài viết này, chúng ta tìm hiểu các cách khác nhau để xóa lần xuất hiện đầu tiên hoặc tất cả các phần tử khỏi danh sách. Chúng tôi cũng đã phân tích cách xóa nhiều phần tử khỏi danh sách theo giá trị |