Thông thường, một số phần tử trong một mảng có thể trống và cần phải loại bỏ chúng. Trong hướng dẫn ngắn này, chúng tôi sẽ cung cấp cho bạn chức năng phù hợp để làm điều đó
Cách phổ biến và chính xác nhất là sử dụng hàm array_filter. Nó sẽ xóa bất kỳ phần tử nào được đánh giá là FALSE [null, false, '', 0]. Bằng cách thêm chức năng gọi lại, bạn có thể tùy chỉnh bộ lọc
Đây là cách Array_filter hoạt động
Kết quả
array[4] { [1] => string[4] "amir" [2] => string[4] "test" [3] => int[490] [6] => string[11] "Hello world" }
Trong ví dụ trên, giá trị của $array là giá trị được minh họa bên dưới nó trong ngoặc
Điều đó hoạt động đúng nhưng có thể để lại các khoảng trống chỉ mục bên trong một mảng. May mắn thay, bạn có thể sửa nó với sự trợ giúp của array_values để lập chỉ mục lại mảng như thế này
Kết quả
array[4] { [0] => string[4] "amir" [1] => string[4] "test" [2] => int[490] [3] => string[11] "Hello world" }
Trong ví dụ này, giá trị của $array là những gì được thể hiện bên dưới nó trong ngoặc đơn
Mô tả hàm array_filter
Hàm này có khả năng lặp qua mọi giá trị trong mảng và chuyển chúng cho hàm gọi lại
Khi hàm gọi lại trả về True, giá trị hiện tại từ mảng sẽ trở lại mảng kết quả
Hàm array_filter có các tham số sau. mảng, gọi lại và gắn cờ
Cái đầu tiên là mảng để lặp lại. Callback là chức năng gọi lại để áp dụng. Và, cờ chỉ định đối số nào được chuyển tiếp đến cuộc gọi lại
Trong bài đăng này, chúng ta sẽ tìm hiểu Xóa chuỗi rỗng khỏi danh sách trong ví dụ Python. Mình xin chia sẻ với các bạn Python Remove Empty Strings in a List. hãy thảo luận về Cách xóa chuỗi rỗng trong Python. Tôi muốn chỉ cho bạn Cách xóa chuỗi rỗng khỏi danh sách trong Python. Thực hiện theo bước hướng dẫn dưới đây của Python Remove Empty String From List
Có một số cách để xóa các giá trị chuỗi rỗng khỏi danh sách trong python. chúng ta sẽ sử dụng các hàm filter[], join[] và remove[] để xóa chuỗi rỗng khỏi danh sách. vì vậy hãy xem các ví dụ dưới đây
Bạn cũng có thể sử dụng khả năng hiểu danh sách để xóa các chuỗi trống khỏi danh sách các chuỗi. Việc hiểu danh sách bao gồm một biểu thức, theo sau là vòng lặp for, tiếp theo là vòng lặp for hoặc câu lệnh if tùy chọn, tất cả được đặt trong dấu ngoặc vuông []
. Lưu ý rằng giải pháp này chậm hơn phương pháp lọc
1
2
3
4
5
6
if __name__ == '__main__'.
l = ['A', 'B', '', 'C', '', 'D']
l = [s for s in l if s]
in[l] # ['A', 'B', 'C', 'D']
Tải xuống Chạy mã
3. Sử dụng hàm join[]
với hàm split[]
Có thể sử dụng biểu thức ' '.join[iterable].split[]
để lọc các giá trị trống từ một lần lặp. ' '.join[list]
nối danh sách các chuỗi được phân cách bằng dấu cách một cách hiệu quả. Sau đó, hàm được gọi trên chuỗi kết quả, trả về danh sách các chuỗi trong đó khoảng trắng liên tiếp được coi là một dấu phân cách.
1
2
3
4
5
6
if __name__ == '__main__'.
l = ['A', 'B', '', 'C', '', 'D']
l = ' '. tham gia[l]. tách[]
in[l] # ['A', 'B', 'C', 'D']
Tải xuống Chạy mã
4. Sử dụng chức năng list.remove[]
list.remove[""]
chỉ xóa lần xuất hiện đầu tiên của một chuỗi rỗng khỏi danh sách. Để loại bỏ tất cả các lần xuất hiện của một chuỗi trống khỏi danh sách, bạn có thể lợi dụng thực tế là nó tăng __11_______0 khi nó không thể tìm thấy mục được chỉ định trong danh sách. Ý tưởng là liên tục gọi hàm None
1 cho đến khi nó tạo ra một ngoại lệ None
0. Điều này được thể hiện dưới đây