Tôi có nên sử dụng is not none python không?
Có rất nhiều biến thể về chủ đề này đến nỗi chúng tôi sẽ thật ngớ ngẩn khi nhấn mạnh vào Một cách viết đúng. Ví dụ: trong mã của riêng tôi, biến thể phổ biến nhất là Show
Mặc dù có nhiều cách hay để giải quyết vấn đề này, nhưng việc viết một câu phủ định kép
không bao giờ là một trong số họ. Điều đó sẽ không thể diễn tả được. Không có câu hỏi hóc búa nào ở đây, đó là một paddlin' Quay trở lại đề xuất của bạn, tôi e rằng bạn dường như đang hiểu sai về Không. Mặc dù đúng là Không có gì hiện là một từ khóa, nhưng nó cũng là một đối tượng, giống như mọi giá trị khác trong Python
Và do đó, nó sẽ dành cho Bây giờ, tất nhiên, theo giả thuyết, chúng ta có thể tạo một dạng cú pháp đặc biệt Không có "có thể giới thiệu tải nhận thức" ở đây. Nó chắc chắn sẽ giới thiệu tải nhận thức Nó sẽ làm phức tạp mô hình thực thi của Python. Thay vì 2 là một toán tử đơn giản luôn kiểm tra xem hai toán hạng có phải là cùng một đối tượng hay không, đôi khi nó sẽ đại diện cho phép kiểm tra ngược lại ("chúng có phải là cùng một đối tượng không?") với toán hạng thứ hai không được nêuTệ hơn, nó sẽ phá vỡ khả năng tương thích ngược. "Bất kỳ" hiện là một tên thông thường miễn phí cho mọi người sử dụng. Có một đối tượng rất quan trọng trong stdlib có tên đó
Với đề xuất này, bạn sẽ không thể kiểm tra xem một đối tượng có phải là Bất kỳ đối tượng nào bằng cách sử dụng 2 hay không, bởi vì is Any sẽ có ý nghĩa ma thuật đặc biệtĐược rồi, có lẽ không phải là không thể. Có lẽ bạn có thể viết
thay vào đó, nhưng điều đó dẫn đến kết quả tồi tệ hơn là bây giờ 2 không còn đối xứng nữa
sẽ không còn có cùng ý nghĩa. (Có rất nhiều phép toán không đối xứng trong Python và toán học, chẳng hạn như phép trừ, phép chia, nhưng để 2 không đối xứng thì thật kỳ lạ. )Về cơ bản, đây sẽ là một từ “Wot?” khó hiểu và kỳ lạ.
Một điều cuối cùng… 8. Toán tử là 9 và toán hạng vẫn là Không có. 8 sẽ cho kết quả là True Tôi hiểu rằng Kỷ nguyên thất bại và vấn đề với ZeroHãy xem xét một loại lỗi phổ biến mà tôi muốn gọi là “Thất bại kỷ nguyên”. Đây là nơi một số quy trình cố gắng đọc dấu thời gian Unix và không thành công. Thay vì xử lý lỗi đó, mã lỗi xử lý giá trị bằng 0. Nhưng dấu thời gian Unix bằng 0 là giây cuối cùng của năm 1969. Chúng tôi nhận được kết quả như Sử dụng 0 để biểu thị trường hợp đặc biệt hoặc không có giá trị dẫn đến lỗi khi 0 cũng có thể là một giá trị nhất quán. Vì vậy, sẽ rất hữu ích khi có một cách để chỉ ra rằng không có giá trị cho một thứ gì đó. Khi Không có không phải là một lỗiBây giờ trong ví dụ đó, việc không đọc được dấu thời gian gần như chắc chắn là một số lỗi cần được xử lý như một lỗi. Nhưng có những trường hợp không có giá trị (hay còn gọi là Giả sử bạn có một đối tượng cho một số loại trạng thái trò chơi hoặc mô phỏng được cập nhật sau mỗi vòng mô phỏng. Một số biến đối tượng sẽ phụ thuộc vào những thứ từ vòng trước. Một số thậm chí có thể phụ thuộc vào hai vòng trước. Do đó, những biến đó không thể được đặt thành bất kỳ thứ gì có ý nghĩa trong thời gian Trong mỗi vòng của trò chơi hoặc mô phỏng của chúng tôi, sẽ có một số phương pháp được gọi là cần phải hành xử là những cách đặc biệt. Sẽ có một bài kiểm tra nếu một biến là Nhưng sẽ có những chức năng khác giả định rằng các tham số mà nó được cung cấp không phải là Không có. Giả sử một xác suất được cập nhật, nhưng làm như vậy phụ thuộc vào các tham số tìm kiếm nhất định và kết quả từ vòng trước. Giả sử chúng ta có một cái gì đó như
Nếu
trước khi gọi đến 1, giả sử chúng ta muốn gọi ____14_______1 trong cách hiểu danh sách hoặc trong một đối số của hàm nào đóCó thể nói những điều như
với 3 giúp việc viết mã rõ ràng và truyền đạt những gì chúng tôi muốn đến trình kiểm tra loại trở nên dễ dàng hơn nhiều[Ghi chú. Tất cả mã ở đây là thứ tôi đã nhập trực tiếp vào giao diện web để thảo luận. Nó có thể có nhiều lỗi cú pháp] Tôi nên sử dụng là Không hoặc == Không?None là một đối tượng đơn lẻ (chỉ tồn tại một None ). là kiểm tra xem đối tượng có phải là cùng một đối tượng hay không, trong khi == chỉ kiểm tra xem chúng có tương đương hay không . Nhưng vì chỉ có một None nên chúng sẽ luôn giống nhau và is sẽ trả về True.
Không phải là Không có nghĩa là gì trong Python?của John Otieno. Trong Python, a Không có là một từ khóa đặc biệt cho trình thông dịch Python biết rằng biến đó là NULL hoặc không có sẵn . Hãy nhớ rằng giá trị NULL không có nghĩa là không. Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách kiểm tra xem một biến có phải là Loại không có không.
Không phải Không có đúng trong Python?Trong Python Không ai là một đơn vị. Nó được gọi là null trong các ngôn ngữ khác. Trong của bạn nếu không có. , trình biên dịch giả định rằng not Không có nghĩa là không trống hoặc khác không và chúng tôi biết một câu lệnh if đánh giá các giá trị khác 0 là True và thực thi chúng. Không có gì không giống với null trong các ngôn ngữ khác.
Tôi có thể sử dụng cái gì thay vì Không có trong Python?đối tượng là một lính canh hợp lý nếu Không có gì không phù hợp - lưu ý rằng bạn có thể sử dụng default=object (i. e. lớp) thay vì default=_DEFAULT (một thể hiện) để lưu bài tập bổ sung. . _DEFAULT của bạn là một cách hoàn toàn hợp lý để đi |