Python hiểu danh sách lồng nhau đang tạo một danh sách mới từ danh sách lồng nhau. Trong bài viết này, chúng ta sẽ xem cách đạt được mức độ hiểu danh sách lồng nhau trong python từng bước Show
Python hiểu danh sách lồng nhau (Từng bước) -Chà, lúc đầu việc hiểu danh sách lồng nhau có vẻ phức tạp. Nhưng nếu chúng ta làm từng bước một, sự hiểu biết này trở nên thật dễ dàng Bước 1Đây là bước tiên quyết để chúng ta tạo một danh sách lồng nhau
Đây chỉ là một danh sách giả để hiểu các thủ thuật. Bạn có thể chọn một danh sách khác theo kịch bản của bạn Bước 2Trong bước này, chúng tôi sẽ cố gắng làm phẳng danh sách. Để đạt được điều này, chúng tôi có hai phương pháp Phương pháp 1Đây là một phương pháp nội tuyến để hiểu danh sách lồng nhau. Tất cả những gì bạn cần để sử dụng dòng dưới đây để làm phẳng danh sách đầy đủ
Phương pháp 2Không giống như, Ở trên, chúng tôi đã phân tán vòng lặp trong mã nhiều dòng. Điều này làm cho mã dễ đọc hơn vì sự phản ánh logic của nó. Đây là mẫu mã cho việc này
Xem, Ở đây chúng tôi đã sử dụng lồng hai cấp. Nhưng nếu bạn có danh sách phức tạp hơn hoặc lồng nhau. Bạn cần điều chỉnh vòng lặp cho phù hợp Ta có thể lấy ví dụ ta muốn ghép từng phần tử của 2 danh sách thì lời giải chung sẽ như thế này
Nhưng chúng ta có thể sử dụng khả năng hiểu danh sách để làm điều này trong một dòng
đầu ra [(1, 4), (1, 5), (2, 4), (2, 5)] Nếu chúng ta thấy hình thức hiểu chung về danh sách thì nó sẽ là
Hiểu danh sách if-else trong PythonĐây là kiểu hiểu danh sách được sử dụng nhiều nhất trong python, nơi chúng ta có thể tạo danh sách từ một lần lặp dựa trên một số điều kiện Nó được sử dụng phổ biến nhất để hiểu vòng lặp bên trong danh sách Một ví dụ cho việc hiểu danh sách if-else bên trong sẽ là tìm số chẵn và số lẻ trong bất kỳ danh sách nào
đầu ra ['1 là lẻ', '4 là chẵn', '7 là lẻ', '12 là chẵn', '19 là lẻ', '22 là chẵn', '23 là lẻ', '26 là Hiểu danh sách lồng nhauCó thể sử dụng khả năng hiểu danh sách trong danh sách lồng nhau của danh sách khác Ví dụ để chuyển vị trí các hàng và cột của ma trận bằng cách sử dụng khả năng hiểu danh sách lồng nhau trong Python
Logic của việc hiểu danh sách trên tương tự như đoạn mã sau 0Khi nào nên tránh sử dụng cách hiểu Danh sách?Cảm thấy hào hứng khi sử dụng khả năng hiểu danh sách ở mọi nơi trong mã của bạn? Sử dụng quá nhiều khả năng hiểu Danh sách trong python sẽ khiến mã của bạn không thể đọc được Vâng, khả năng hiểu danh sách rất hữu ích để viết mã Pythonic đẹp hơn. Bạn luôn nên sử dụng khả năng hiểu danh sách trong Python nhưng vẫn duy trì khả năng đọc mã Nếu bạn sử dụng khả năng hiểu danh sách cho một vấn đề rất phức tạp thì việc đọc mã của bạn sẽ là cơn ác mộng đối với các nhà phát triển khác Hãy luôn nhớ một điều, những gì bạn biết về mã của bạn, người khác sẽ mất thời gian để hiểu nó. Vì vậy, với tư cách là nhà phát triển có trách nhiệm, chúng ta cần viết mã mà người khác có thể đọc mà không gặp vấn đề gì Bạn có thể sử dụng khả năng hiểu danh sách một cách tự do trong mã không dành cho con người đọc như trong các bài kiểm tra lập trình (đó là nơi tôi sử dụng nó nhiều nhất) Phần kết luậnCó vẻ như rất tuyệt khi sử dụng danh sách Hiểu ở mọi nơi. Nhưng nó có chi phí riêng của nó Việc hiểu danh sách làm cho mã khó hiểu, bạn luôn nên tránh nén danh sách trong các trường hợp phức tạp Là một nhà phát triển có trách nhiệm, chúng ta nên bình luận mã đúng cách khi chúng ta sử dụng nén danh sách vì nó sẽ giúp người khác dễ dàng hiểu mã Bạn có thể tự do sử dụng tính năng nén danh sách khi bạn không muốn con người đọc mã hoặc bạn muốn trình đọc mã tập trung vào các phần khác của mã ngoài phần đó (đã nén) Hiểu lồng nhau trong Python là gì?Đó là một cách thông minh và ngắn gọn để tạo danh sách bằng cách lặp qua một đối tượng có thể lặp lại. Khả năng hiểu danh sách lồng nhau không có gì khác ngoài việc hiểu danh sách trong một mức hiểu danh sách khác khá giống với các vòng lặp for lồng nhau.
Khả năng hiểu danh sách trong Python có nhanh hơn không?Việc hiểu danh sách nhanh hơn vòng lặp for để tạo danh sách . Tuy nhiên, điều này là do chúng tôi đang tạo danh sách bằng cách thêm các phần tử mới vào danh sách đó ở mỗi lần lặp lại. cái này chậm. lưu ý bên lề. Nó thậm chí còn tệ hơn nếu đó là một Mảng Numpy chứ không phải một danh sách.
Khả năng hiểu danh sách có nhanh hơn Numpy không?Như đã thấy ở trên, 3 cách nhanh nhất để tính số bình phương là. Nặng nề (63. 5ms) Chuyển đổi Numpy thành danh sách (1. 68s) Đọc hiểu danh sách (3. những năm 93)
Làm thế nào bạn có thể tạo danh sách lồng nhau trong Python?Danh sách Python lồng nhau
. Sau đó, chúng ta sẽ tạo một danh sách lồng nhau khác bằng cách đặt hai danh sách không trống bên trong một danh sách, được phân tách bằng dấu phẩy như cách chúng ta làm với các phần tử danh sách thông thường. create a nested list by putting an empty list inside of another list. Then, we'll create another nested list by putting two non-empty lists inside a list, separated by a comma as we would with regular list elements. |