In bộ lọc Python
Cách hiệu quả nhất và Pythonic nhất là sử dụng khả năng hiểu danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)1 để lọc tất cả các phần tử từ danh sách Show
Làm cách nào để lọc danh sách trong Python? Xem video này trên YouTube Lọc với danh sách hiểuCách Pythonic nhất để lọc danh sách — theo ý kiến của tôi — là câu lệnh hiểu danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)1. Bạn có thể thay thế điều kiện bằng bất kỳ chức năng nào của lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3 mà bạn muốn sử dụng làm điều kiện lọc Ví dụ: nếu bạn muốn lọc tất cả các phần tử nhỏ hơn, chẳng hạn như 10, bạn sẽ sử dụng câu lệnh hiểu danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)4 để tạo một danh sách mới với tất cả các phần tử danh sách nhỏ hơn 10 Dưới đây là ba ví dụ về lọc danh sách
lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = [x for x in lst if x<8] print(small) # Filter all even elements even = [x for x in lst if x%2==0] print(even) # Filter all odd elements odd = [x for x in lst if x%2] print(odd) đầu ra là ________số 8Đây là cách hiệu quả nhất để lọc danh sách và nó cũng là cách Pythonic nhất Tuy nhiên, nếu bạn đang tìm kiếm các lựa chọn thay thế, hãy tiếp tục đọc vì tôi sẽ giải thích cho bạn từng sắc thái của việc lọc danh sách trong Python trong hướng dẫn toàn diện này Lọc Danh sách Python bằng filter()Hàm lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)8 lấy một hàm làm đầu vào đảm nhận đối số (phần tử danh sách) và trả về giá trị Boolean cho dù phần tử danh sách này có vượt qua bộ lọc hay không. Tất cả các phần tử vượt qua bộ lọc được trả về dưới dạng đối tượng lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)9 mới (đối tượng bộ lọc) Bạn có thể sử dụng câu lệnh hàm lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)10 để tạo hàm ngay tại nơi bạn chuyển nó làm đối số Cú pháp của hàm lambda là lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)11 và điều đó có nghĩa là bạn sử dụng lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3 làm đối số đầu vào và kết quả là bạn trả về biểu thức (có thể hoặc không thể sử dụng lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3 để quyết định giá trị trả về) Hướng dẫn liên quan. Để biết thêm thông tin, hãy xem bài viết chi tiết trên blog của tôi về hàm lambda lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)5 đầu ra là ________số 8Hàm lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)14 trả về một đối tượng bộ lọc là một lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)15. Để chuyển đổi nó thành một danh sách, bạn sử dụng hàm tạo lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)16 bài viết liên quan
Lọc Danh sách Python bằng map()Tôi chỉ thêm tùy chọn này vì mọi người vẫn đang cố gắng sử dụng hàm lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)17 để lọc ra các phần tử khỏi danh sách 🛑 Đây rõ ràng là một cách làm sai Lý do là hàm lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)17 chỉ cho phép bạn chuyển đổi từng phần tử của danh sách thành phần tử mới. Nhưng bạn vẫn sẽ có cùng số phần tử trong danh sách Do đó, bạn cần có thêm một bước lọc ra tất cả các phần tử (ví dụ: bằng cách sử dụng tính năng hiểu danh sách). Nhưng nếu bạn đã sẵn sàng thực hiện thêm bước này, bạn cũng có thể sử dụng khả năng hiểu danh sách để lọc ngay từ đầu Đây là những gì tôi muốn nói lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd) Đầu ra lại giống nhau lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)1 Nhưng phương pháp lấy đầu ra này rõ ràng là không hiệu quả và không thể đọc được Những bài viết liên quan
Trình tạo danh sách bộ lọc PythonMột biểu thức trình tạo tạo một trình vòng lặp trên một chuỗi các giá trị. Nó hoạt động giống như cách hiểu danh sách—nhưng không tạo kiểu dữ liệu danh sách. Cái này hiệu quả hơn một chút Bạn có thể sử dụng các biểu thức trình tạo trong bất kỳ lệnh gọi hàm nào yêu cầu một lần lặp làm đầu vào. Ví dụ: nếu bạn muốn tính tổng của tất cả các giá trị đáp ứng một điều kiện nhất định trong danh sách
Đây là một ví dụ mã cho thấy cách tính tổng tất cả các giá trị số nguyên trong danh sách (và bỏ qua phần còn lại) bằng cách sử dụng biểu thức trình tạo để lọc ra những giá trị không phải số nguyên đó lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)5 Bạn kiểm tra lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)51 của từng phần tử và so sánh với kiểu số nguyên. So sánh này trả về lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 nếu trên thực tế, phần tử có kiểu số nguyên Danh sách bộ lọc Python có điều kiệnBạn có thể xác định bất kỳ điều kiện phức tạp nào trên phần tử danh sách để quyết định có lọc nó ra hay không Chỉ cần tạo chức năng của riêng bạn (e. g. , lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)53) lấy một phần tử danh sách làm đầu vào và trả về giá trị Boolean lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 nếu điều kiện được đáp ứng hoặc lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)55 nếu không Đây là một ví dụ mã lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)2 Tất cả các phần tử nhỏ hơn 10 và lớn hơn 0 đều được đưa vào danh sách đã lọc. Như vậy chỉ còn lại một phần tử 3 Danh sách bộ lọc Python Nhiều điều kiệnĐiều tương tự cũng áp dụng nếu bạn muốn kết hợp nhiều điều kiện Giả sử, bạn muốn lọc ra tất cả các phần tử lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)56 và lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)57. Đây là hai điều kiện (đơn giản) Bạn có thể xác định bất kỳ điều kiện phức tạp nào trên phần tử danh sách để quyết định có lọc nó ra hay không. Để làm điều này, hãy tạo một hàm (e. g. , lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)53) lấy một phần tử danh sách làm đầu vào và trả về giá trị Boolean lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 nếu điều kiện được đáp ứng hoặc lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)55 nếu không Đây là ví dụ mã giống như trước đây lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)2 Tất cả các phần tử nhỏ hơn 10 và lớn hơn 0 đều được đưa vào danh sách đã lọc. Như vậy chỉ còn lại một phần tử 3 Danh sách bộ lọc Python với RegexVấn đề. Đưa ra một danh sách các chuỗi. Làm cách nào bạn có thể lọc những cái phù hợp với một biểu thức chính quy nhất định? Thí dụ. Giả sử, bạn có một danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)21 và bạn muốn lọc ra những phần tử không đáp ứng mẫu biểu thức chính quy lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)22. Bạn mong đợi danh sách được lọc là lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)23 Dung dịch. Sử dụng khung lọc hiểu danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)24 để lọc ra tất cả các phần tử không khớp với một chuỗi đã cho lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3 Bạn sử dụng phương thức lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)25 để trả về một đối tượng khớp nếu có kết quả khớp hoặc ngược lại là lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)26 Trong Python, bất kỳ đối tượng so khớp nào cũng có giá trị là lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 (nếu cần) ngoại trừ một số ngoại lệ (e. g. , lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)26, lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)29, lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)20, v.v. ) Nếu bạn cần làm mới kiến thức cơ bản của mình về hàm lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)25, hãy xem bài viết chi tiết trên blog của tôi để hướng dẫn bạn từng bước về công cụ Python mạnh mẽ này Những bài viết liên quan
Làm cách nào để lọc danh sách danh sách Python?Câu trả lời ngắn. Để lọc một danh sách các danh sách cho một điều kiện trong các danh sách bên trong, hãy sử dụng câu lệnh hiểu danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)22 và thay thế lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)53 bằng điều kiện lọc của bạn. Điều kiện này trả về lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 để bao gồm danh sách bên trong lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3 và ngược lại là lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)55 Vui lòng xem video của tôi về chủ đề này Làm cách nào để lọc danh sách trong Python? Xem video này trên YouTube Danh sách thuộc về cấu trúc dữ liệu quan trọng nhất trong Python—mọi lập trình viên bậc thầy đều thuộc lòng chúng Đáng ngạc nhiên là ngay cả những lập trình viên trung cấp cũng không biết cách tốt nhất để lọc một danh sách—chứ đừng nói đến danh sách các danh sách trong Python. Hướng dẫn này chỉ cho bạn cách thực hiện cái sau Vấn đề. Giả sử, bạn có một danh sách các danh sách. Bạn muốn lọc danh sách các danh sách để chỉ còn lại những danh sách bên trong thỏa mãn một điều kiện nào đó. Điều kiện là một chức năng của danh sách bên trong—chẳng hạn như giá trị trung bình hoặc tổng của các phần tử danh sách bên trong Thí dụ. Đưa ra danh sách các danh sách sau đây với các phép đo nhiệt độ hàng tuần mỗi tuần—và một danh sách bên trong mỗi tuần # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]0 Làm cách nào để lọc ra các tuần lạnh hơn với giá trị nhiệt độ trung bình <8? # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]1 Có hai phương pháp ngữ nghĩa tương đương để đạt được điều này. hiểu danh sách và chức năng lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)17 Những bài viết liên quan
Danh sách chuỗi bộ lọc PythonVấn đề. Đưa ra một danh sách các chuỗi và một chuỗi truy vấn. Làm cách nào bạn có thể lọc những chuỗi chứa chuỗi truy vấn? Thí dụ. Giả sử, bạn có một danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)21 và bạn muốn lấy tất cả các phần tử có chứa chuỗi con lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)29. Bạn mong muốn danh sách được lọc là lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)30 Dung dịch. Sử dụng khung lọc hiểu danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)1 để lọc ra tất cả các phần tử không chứa chuỗi khác # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]2 Bạn sử dụng thao tác thành viên chuỗi cơ bản “in” để kiểm tra xem một phần tử có vượt qua bộ lọc hay không Danh sách bộ lọc Python Xóa chuỗi rỗngVấn đề. Đưa ra một danh sách các chuỗi. Làm thế nào bạn có thể loại bỏ tất cả các chuỗi rỗng? Thí dụ. Giả sử, bạn có một danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)32 và bạn muốn nhận một danh sách mới lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)21 gồm các chuỗi không trống Dung dịch. Sử dụng khung lọc hiểu danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)34 để lọc ra tất cả các chuỗi trống # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]3 Bạn sử dụng thuộc tính mà Python gán giá trị Boolean lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)35 cho chuỗi rỗng lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)36 Danh sách bộ lọc Python kết thúc với() và bắt đầu với()Vấn đề. Đưa ra một danh sách các chuỗi. Làm cách nào bạn có thể lọc những chuỗi bắt đầu bằng một chuỗi khác (hoặc kết thúc bằng một chuỗi khác)? Thí dụ. Giả sử, bạn có một danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)21 và bạn muốn lấy tất cả các phần tử bắt đầu bằng lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)29. Bạn mong muốn danh sách được lọc là lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)30 Dung dịch. Sử dụng khung lọc hiểu danh sách # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]00 để lọc ra tất cả các phần tử bắt đầu bằng lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)29 Nếu bạn muốn kiểm tra các chuỗi kết thúc bằng một chuỗi khác, bạn có thể sử dụng hàm # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]02 để thay thế # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]4 Bạn sử dụng các hàm # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]03 và # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]04 làm điều kiện lọc Danh sách bộ lọc Python với LambdaHàm lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)8 lấy hàm lọc làm đối số lấy một thành phần danh sách làm đầu vào và trả về giá trị Boolean lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 nếu điều kiện được đáp ứng hoặc lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)55 nếu không. Hàm này quyết định một phần tử có được đưa vào danh sách đã lọc hay không Để xác định chức năng này, bạn có thể sử dụng từ khóa lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)10. Hàm lambda là một hàm ẩn danh—hãy nghĩ về nó như một hàm bỏ đi chỉ cần làm đối số và không cần gì khác trong mã Đây là mã cho biết cách lọc danh sách bằng cách sử dụng hàm lambda để lọc danh sách và chỉ trả về các giá trị lẻ trong danh sách # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]5 Hàm lambda # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]09 nhận một đối số lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3—phần tử được kiểm tra đối với bộ lọc—và trả về kết quả của biểu thức # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]11. Biểu thức modulo này trả về 1 nếu số nguyên là số lẻ và 0 nếu số nguyên là số chẵn Do đó, tất cả các phần tử lẻ đều vượt qua bài kiểm tra Danh sách bộ lọc Python với một danh sách khácVấn đề. Đưa ra một danh sách các giá trị # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]12 và một danh sách Booleans # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]13. Làm cách nào để lọc danh sách đầu tiên bằng danh sách thứ hai? Thí dụ. Dưới đây là hai danh sách ví dụ # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]6 Và bạn muốn có được danh sách này # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]7 Dung dịch. Sử dụng một câu lệnh hiểu danh sách đơn giản # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]18 để kiểm tra từng chỉ mục i xem giá trị Boolean của bộ lọc tương ứng có phải là lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 hay không. Trong trường hợp này, bạn thêm phần tử ở chỉ số # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]14 trong # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]12 vào danh sách đã lọc mới Đây là mã # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]8 Danh sách Boolean đóng vai trò là “mặt nạ” xác định phần tử nào vượt qua bộ lọc và phần tử nào không. Một cách khác là sử dụng hàm # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]22 để lặp lại nhiều chuỗi mà không cần chạm vào bất kỳ chỉ mục nào # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]9 Có liên quan. Bạn có cần cải thiện sự hiểu biết về # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]22 của mình không? Danh sách bộ lọc Python có chỉ mụcVấn đề. Đưa ra một danh sách các giá trị và một danh sách các chỉ số. Làm cách nào để lọc tất cả các phần tử có chỉ số trong danh sách thứ hai? Thí dụ. Bạn đã mất ________ 824 và các chỉ số ________ 825. Bạn đang tìm kiếm danh sách đã lọc # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]26 Dung dịch. Xem qua tất cả các chỉ mục trong danh sách thứ hai và bao gồm các phần tử danh sách tương ứng bằng cách sử dụng một câu lệnh hiểu danh sách đơn giản # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]27 lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)50 Chỉ có hai phần tử có chỉ số 1 và 2 vượt qua bộ lọc Bộ lọc Python Danh sách từ điểnVấn đề. Đưa ra một danh sách các từ điển. Mỗi từ điển bao gồm một hoặc nhiều cặp (khóa, giá trị). Bạn muốn lọc chúng theo giá trị của một khóa từ điển cụ thể (thuộc tính). Làm thế nào để bạn làm điều này? Ví dụ tối thiểu. Xem xét ví dụ sau khi bạn có ba từ điển người dùng với các khóa # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]28, # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]29 và # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]30. Bạn muốn lấy danh sách tất cả người dùng đáp ứng một điều kiện nhất định, chẳng hạn như # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]31 Đây là những gì bạn cố gắng hoàn thành lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)51 Đầu ra sẽ giống như thế này khi thuộc tính # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]30 xác định liệu một từ điển có vượt qua bộ lọc hay không, tôi. e. , # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]31 lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 Dung dịch. Sử dụng hiểu danh sách # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]34 để tạo danh sách từ điển mới đáp ứng điều kiện. Tất cả các từ điển trong ________ 812 không thỏa điều kiện đều bị lọc ra. Bạn có thể xác định tình trạng của riêng mình trên phần tử danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3 Đây là đoạn mã hướng dẫn bạn cách lọc ra tất cả các từ điển người dùng không đáp ứng điều kiện đã chơi ít nhất 100 giờ lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)53 Đầu ra là danh sách từ điển đã lọc thỏa mãn điều kiện lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 Các bài viết liên quan trên blog Finxter
Danh sách bộ lọc Python duy nhất – Loại bỏ các bản saoLàm cách nào để xóa tất cả các giá trị trùng lặp của một giá trị nhất định trong danh sách? Cách tiếp cận ngây thơ là đi qua từng phần tử và kiểm tra xem phần tử này đã tồn tại trong danh sách chưa. Nếu vậy, loại bỏ nó. Tuy nhiên, điều này mất một vài dòng mã Một cách ngắn gọn và súc tích hơn là tạo một từ điển từ các phần tử trong danh sách. Mỗi phần tử danh sách trở thành một khóa mới cho từ điển. Tất cả các phần tử xảy ra nhiều lần sẽ được gán cho cùng một khóa. Từ điển chỉ chứa các khóa duy nhất—không thể có nhiều khóa bằng nhau Là giá trị từ điển, bạn chỉ cần lấy giá trị giả (theo mặc định) Bài viết blog liên quan
Sau đó, bạn chỉ cần chuyển đổi từ điển trở lại danh sách loại bỏ các giá trị giả. Vì các khóa từ điển giữ nguyên thứ tự nên bạn không bị mất thông tin thứ tự của các phần tử danh sách gốc Đây là mã lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)55 Phạm vi danh sách bộ lọc PythonLọc tất cả các phần tử trong danh sách nằm trong phạm vi giá trị giữa các chỉ số # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]37 và # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]38 đã cho lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)56 Bạn dùng điều kiện ________ 839 để kiểm tra xem danh sách phần tử lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3 có rơi vào dãy ________ 841 hay không Danh sách bộ lọc Python Lớn hơn và Nhỏ hơnLọc tất cả các phần tử trong danh sách lớn hơn giá trị y đã cho lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)57 Bạn dùng điều kiện ________ 842 để kiểm tra xem phần tử danh sách lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3 có lớn hơn ________ 844 hay không. Trong trường hợp trước, nó được đưa vào danh sách đã lọc. Trong trường hợp sau, nó không phải là Bạn có thể sử dụng ý tưởng tương tự với toán tử nhỏ hơn # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]45 thông qua câu lệnh hiểu danh sách # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]46 Số lượng danh sách bộ lọc PythonLàm cách nào bạn có thể đếm các phần tử trong một điều kiện nhất định trong Python? Ví dụ, nếu bạn muốn đếm tất cả các giá trị chẵn trong một danh sách thì sao? Có nhiều cách để thực hiện điều này, hãy thảo luận từng cách một Giả sử, bạn có một điều kiện cho từng phần tử lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3. Hãy biến nó thành một hàm có tên lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)53. Bạn có thể xác định bất kỳ điều kiện nào bạn muốn—chỉ cần đặt nó vào hàm của bạn Ví dụ: điều kiện này trả về lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 cho tất cả các phần tử lớn hơn số nguyên 10 lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)58 Nhưng bạn cũng có thể xác định các điều kiện phức tạp hơn như kiểm tra xem chúng có phải là số nguyên tố không Danh sách Python Đếm NếuLàm thế nào bạn có thể đếm các phần tử của danh sách NẾU điều kiện được đáp ứng? Câu trả lời là sử dụng biểu thức trình tạo đơn giản # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]50 lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)59 Kết quả cho biết có 2 phần tử lớn hơn 10. Bạn đã sử dụng một biểu thức trình tạo trả về một trình vòng lặp của Booleans Lưu ý rằng Boolean lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 được biểu thị bằng giá trị nguyên 1 và Boolean lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)55 được biểu thị bằng giá trị nguyên 0. Đó là lý do tại sao bạn có thể chỉ cần tính tổng trên tất cả các Boolean để có được số phần tử thỏa mãn điều kiện Số lượng danh sách Python lớn hơn/nhỏ hơnNếu bạn muốn xác định số phần tử lớn hơn hoặc nhỏ hơn một giá trị cụ thể, chỉ cần sửa đổi điều kiện trong ví dụ này lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)59 Ví dụ: để tìm số phần tử nhỏ hơn 5, hãy sử dụng điều kiện # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]53 trong biểu thức trình tạo # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]1 Danh sách Python Đếm Zero / Non-ZeroĐể đếm số 0 trong một danh sách nhất định, hãy sử dụng lệnh gọi phương thức # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]54 Để đếm số lượng khác 0 trong một danh sách nhất định, bạn nên sử dụng cách đếm có điều kiện như đã thảo luận trước đây # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]2 Danh sách Python Đếm Lambda + Bản đồMột cách khác là sử dụng kết hợp bản đồ và hàm lambda Những bài viết liên quan
Đây là mã # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]3 Bạn đếm số số nguyên chẵn trong danh sách
Kết quả là số phần tử mà điều kiện đánh giá là lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)52 Danh sách bộ lọc Python theo độ dài chuỗiĐưa ra một danh sách các chuỗi Làm cách nào để có được tất cả các phần tử có nhiều hơn lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)3 ký tự? . cách lọc danh sách theo độ dài chuỗi? # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]4 Câu lệnh hiểu danh sách # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]60 lọc tất cả các chuỗi có nhiều hơn ba ký tự Danh sách bộ lọc Python Không cóLàm cách nào để xóa tất cả các giá trị lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)26 khỏi danh sách? Ví dụ: bạn có danh sách # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]62 và bạn muốn danh sách # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]63. Làm thế nào để bạn làm điều này? # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]5 Trong Python, mỗi phần tử có một giá trị Boolean được liên kết để bạn có thể sử dụng bất kỳ đối tượng Python nào làm điều kiện. Giá trị lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)26 được liên kết với giá trị Boolean lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)55 Danh sách JSON của bộ lọc PythonVấn đề. Giả sử, bạn có một đối tượng danh sách JSON. Bạn muốn lọc danh sách dựa trên một thuộc tính. Làm thế nào để thực hiện điều đó? Thí dụ. Đưa ra danh sách JSON sau đây # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]6 Bạn muốn tìm tất cả người dùng có loại tài khoản # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]66 # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]7 Dung dịch. Sử dụng khả năng hiểu danh sách # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]67 để lọc danh sách và lấy danh sách JSON mới với các đối tượng vượt qua bộ lọc # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]8 Chỉ Ann và Bob có tài khoản trả phí và vượt qua bài kiểm tra # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]68 Danh sách bộ lọc Python Một dòngBạn muốn lọc danh sách của mình theo một điều kiện nhất định trong một dòng mã? . Một lớp lót này trả về một đối tượng danh sách mới với tất cả các phần tử vượt qua "bài kiểm tra" lọc Đây là một ví dụ # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]9 Bộ lọc một lớp tất cả các phần tử trong danh sách và kiểm tra xem chúng có thuộc loại chuỗi không. Nếu có, họ sẽ vượt qua bài kiểm tra và được đưa vào danh sách mới Nếu bạn thích một lớp lót, bạn sẽ thích cuốn sách Python One-Liner của tôi (NoStarch Press 2020). Nó chỉ cho bạn chính xác cách viết mã Pythonic và nén suy nghĩ và viết mã của bạn thành dạng tối giản nhất Danh sách bộ lọc Python hiệu quả. bộ lọc () so với Hiểu danh sách[Spoiler] Lọc danh sách nào nhanh hơn. # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]71 so với khả năng hiểu danh sách? Để trả lời câu hỏi này, tôi đã viết một đoạn script ngắn để kiểm tra hiệu suất thời gian chạy của việc lọc các danh sách lớn có kích thước tăng dần bằng cách sử dụng # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]71 và các phương pháp hiểu danh sách Luận điểm của tôi là phương pháp hiểu danh sách sẽ nhanh hơn một chút đối với kích thước danh sách lớn hơn vì nó thúc đẩy việc triển khai hiểu danh sách hiệu quả của cPython và không cần gọi một hàm bổ sung Tôi đã sử dụng máy tính xách tay của mình với Intel(R) Core(TM) i7-8565U 1. Bộ xử lý 8GHz (với Turbo Boost lên đến 4. 6 GHz) và 8 GB RAM Sau đó, tôi đã tạo 100 danh sách bằng cả hai phương thức với kích thước từ 10.000 phần tử đến 1.000.000 phần tử. Là các phần tử, tôi chỉ đơn giản là tăng số nguyên lên một bắt đầu từ 0 Đây là mã tôi đã sử dụng để đo lường và vẽ kết quả. phương pháp nào nhanh hơn— # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]71 hay hiểu danh sách? lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)0 Mã so sánh thời gian chạy của hàm # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]71 và biến thể hiểu danh sách để lọc danh sách. Lưu ý rằng hàm # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]71 trả về một đối tượng bộ lọc, vì vậy bạn cần chuyển đổi nó thành một danh sách bằng cách sử dụng hàm tạo # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]77 Đây là biểu đồ kết quả so sánh thời gian chạy của hai phương thức Trên trục x, bạn có thể thấy kích thước danh sách từ 0 đến 1.000.000 phần tử. Trên trục y, bạn có thể thấy thời gian chạy tính bằng giây cần thiết để thực thi các chức năng tương ứng Biểu đồ kết quả cho thấy cả hai phương pháp đều cực kỳ nhanh đối với vài chục nghìn phần tử. Trên thực tế, chúng nhanh đến mức chức năng # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]78 của mô-đun thời gian không thể ghi lại thời gian đã trôi qua Nhưng khi bạn tăng kích thước của danh sách lên hàng trăm nghìn phần tử, phương pháp hiểu danh sách bắt đầu giành chiến thắng. Đối với các danh sách lớn có một triệu phần tử, việc lọc danh sách bằng khả năng hiểu danh sách nhanh hơn 40% so với phương pháp # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]71 tích hợp Lý do là việc triển khai hiệu quả câu lệnh hiểu danh sách. Một quan sát thú vị là như sau mặc dù. Nếu không chuyển hàm lọc thành danh sách, bạn sẽ nhận được kết quả như sau Đột nhiên hàm # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]71 có thời gian chạy liên tục gần bằng 0 giây—bất kể có bao nhiêu phần tử trong danh sách. Tại sao chuyện này đang xảy ra? Lời giải thích thật đơn giản. chức năng bộ lọc trả về một trình vòng lặp, không phải danh sách. Iterator không cần tính toán một phần tử nào cho đến khi nó được yêu cầu tính toán phần tử # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]81 Vì vậy, hàm # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]71 chỉ tính toán phần tử tiếp theo nếu bắt buộc phải làm như vậy. Chỉ khi bạn chuyển đổi nó thành một danh sách, nó phải tính toán tất cả các giá trị. Mặt khác, nó không thực sự tính toán trước một giá trị nào Lập trình hài hước – PythonĐi đâu từ đâyHướng dẫn này đã chỉ cho bạn thông tin chi tiết về hàm # Elements <8 [2, 6, 4, 3, 1] # Even Elements [8, 2, 6, 4] # Odd Elements [3, 1]71 trong Python và so sánh nó với cách lọc hiểu danh sách. lst = [8, 2, 6, 4, 3, 1] # Filter all elements <8 small = list(map(lambda x: x if x<8 else None, lst)) small = [x for x in small if x!=None] print(small) # Filter all even elements even = list(map(lambda x: x if x%2==0 else None, lst)) even = [x for x in even if x!=None] print(even) # Filter all odd elements odd = list(map(lambda x: x if x%2 else None, lst)) odd = [x for x in odd if x!=None] print(odd)1. Bạn đã thấy rằng cái sau không chỉ dễ đọc hơn và giống Pythonic hơn mà còn nhanh hơn. Vì vậy, hãy sử dụng phương pháp hiểu danh sách để lọc danh sách Nếu bạn yêu thích viết mã và bạn muốn làm công việc này toàn thời gian một cách thoải mái tại nhà riêng của mình, bạn thật may mắn Tôi đã tạo một hội thảo trực tuyến miễn phí cho bạn thấy tôi đã bắt đầu như thế nào với tư cách là một người làm việc tự do bằng Python sau khi học khoa học máy tính và làm việc tại nhà (và chứng kiến các con tôi lớn lên) trong khi vẫn kiếm được thu nhập toàn thời gian chỉ bằng công việc bán thời gian Hội thảo trực tuyến. Làm thế nào để trở thành Freelancer Python sáu con số? Tham gia cùng 21.419 lập trình viên Python đầy tham vọng. Nó vui Chris Trong khi làm việc với tư cách là một nhà nghiên cứu trong các hệ thống phân tán, Dr. Christian Mayer tìm thấy tình yêu của mình với việc dạy sinh viên khoa học máy tính Để giúp sinh viên đạt được mức độ thành công Python cao hơn, anh ấy đã thành lập trang web giáo dục lập trình Finxter. com. Ông là tác giả của cuốn sách lập trình nổi tiếng Python One-Liners (NoStarch 2020), đồng tác giả của loạt sách tự xuất bản Coffee Break Python, người đam mê khoa học máy tính, cộng tác viên tự do và chủ sở hữu của một trong 10 blog Python lớn nhất thế giới Niềm đam mê của anh ấy là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh ấy là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ nâng cao kỹ năng của mình. Bạn có thể tham gia học viện email miễn phí của anh ấy tại đây |