Vậy làm cách nào tôi có thể đặt câu hỏi cho biến là NoneType?
Sử dụng is
điều hành, như thế này
if variable is None:
Tại sao các công trình này?
Kể từ None
là đối tượng singleton duy nhất của NoneType
bằng Python, chúng ta có thể sử dụng is
điều hành để kiểm tra xem một biến có None
trong đó hay không.
Trích dẫn từ is
docs,
Các nhà khai thác is
và is not
thử nghiệm cho nhận dạng đối tượng: x is y
là đúng nếu và chỉ nếu x
và y
là cùng một đối tượng. x is not y
mang lại giá trị chân lý nghịch đảo.
Vì chỉ có thể có một trường hợp None
, is
sẽ là cách ưa thích để kiểm tra None
.
Nghe nó từ miệng của ngựa
Trích dẫn Python's Coding Style Guidelines - PEP-008 (cùng được xác định bởi Guido mình),
So sánh để độc thân như None
nên luôn luôn được thực hiện với is
hoặc is not
, không bao giờ là nhà khai thác bình đẳng.
Tôi nghĩ rằng điều này đã được trả lời [ở đây] (http://stackoverflow.com/questions/14247373/python-none-comparison-should-i-use-is-or) và dường như một nơi nào đó trước khi – yorodm
Nếu 'None' là giá trị duy nhất mà phương thức của bạn trả về mà 'bool (returnValue)' bằng 'False', thì' nếu không mới: 'phải hoạt động tốt. Điều này đôi khi xảy ra trong các thư viện tích hợp - ví dụ: ['re.match'] (https://docs.python.org/2/library/re.html#re.match) trả về None hoặc một kết hợp thật vật. – Kevin