Hướng dẫn any vs all python - bất kỳ so với tất cả python
Ngày đăng:
13/10/2022
Trả lời:
0
Lượt xem:
22
0 và 1 lấy Iterables và trả lại 4 nếu có và tất cả (tương ứng) của các yếu tố là 4. Show
Nếu các vòng lặp trống, 0 sẽ trả về 7 và 1 trả về 4.
Tôi đã trình diễn 1 và 0 cho học sinh trong lớp ngày hôm nay. Họ chủ yếu bị nhầm lẫn về các giá trị trả về cho các vòng lặp trống. Giải thích nó theo cách này đã khiến rất nhiều bóng đèn bật lên.Hành vi tắtHọ, 0 và 1, cả hai đều tìm kiếm một điều kiện cho phép họ ngừng đánh giá. Các ví dụ đầu tiên tôi đưa ra yêu cầu họ đánh giá Boolean cho từng yếu tố trong toàn bộ danh sách.. Đây là một triển khai Python của bất kỳ và tất cả:
Tất nhiên, việc triển khai thực sự được viết bằng C và hiệu suất hơn nhiều, nhưng bạn có thể thay thế các điều trên và nhận được kết quả tương tự cho mã trong câu trả lời này (hoặc bất kỳ) câu trả lời nào khác). >>> any([]), all([]) (False, True) 1 1 Kiểm tra các phần tử là 7 (vì vậy nó có thể trả về 7), sau đó nó trả về 4 nếu không ai trong số chúng là 7.
>>> any([]), all([]) (False, True) 0Cách 0 hoạt động là nó kiểm tra các phần tử là 4 (vì vậy nó có thể trả về ____ 33False ________ 34True`.
Tôi nghĩ rằng nếu bạn ghi nhớ hành vi cắt ngắn, bạn sẽ trực giác hiểu cách họ làm việc mà không cần phải tham khảo một bảng sự thật. Bằng chứng về việc thu phí >>> any([]), all([]) (False, True) 1 và >>> any([]), all([]) (False, True) 0:Đầu tiên, hãy tạo một IAISY_ITHERATOR:
Và bây giờ chúng ta hãy lặp đi lặp lại trong danh sách ồn ào, sử dụng các ví dụ của chúng tôi:
Chúng ta có thể thấy 1 dừng trong kiểm tra Boolean sai đầu tiên.Và 0 dừng trên kiểm tra Boolean thực sự đầu tiên:
NguồnHãy xem xét nguồn để xác nhận những điều trên. Đây là nguồn cho 0:
Và đây là nguồn cho 1: |