Hướng dẫn does none evaluate to true python? - không ai đánh giá đúng python?

Câu trả lời này cho một câu hỏi liên quan chứa một số thông tin tốt mà bạn có thể muốn xem, giải thích chi tiết về việc sử dụng True, FalseNone trong Python: https://stackoverflow.com/a/949487/4174975

Một lời giải thích có lẽ cụ thể hơn cho câu trả lời của bạn có thể được tìm thấy trong cuốn sách O'Reilly giới thiệu Python của Bill Lubanovic, người đề cập đến các chương trình Python sử dụng khái niệm "sự thật" và "giả" để kiểm tra các cấu trúc dữ liệu trống cũng như False điều kiện. Tác giả thậm chí còn có một tiểu mục trên trang 88 có tiêu đề "Không có gì hữu ích" mà xây dựng:

None là một giá trị Python đặc biệt giữ một vị trí khi không có gì để nói. Nó không giống như giá trị boolean False, mặc dù nó có vẻ sai khi được đánh giá là boolean. . ({}) và tập hợp (set ()) đều là False, nhưng không bằng None.

Vì vậy, đó là lý do đằng sau lý do tại sao None hành xử theo cách mà nó làm, và có những phẩm chất tinh tế ngoài những gì bạn nhận được với TrueFalse hoặc

>>> None == False
False
>>> None == 0
False
6 hoặc
>>> None == False
False
>>> None == 0
False
7.

Đối với phần khác trong câu hỏi của bạn, nó dường như là một tautology logic: NoneFalse vì Python diễn giải None là tương đương với

>>> None == False
False
>>> bool(None) == False
True
1 vì những lý do được tìm thấy ở trên. Bằng cách thêm
>>> None == False
False
>>> bool(None) == False
True
2 vào None, bạn đang đảo ngược giá trị boolean của nó, biến nó thành True.

Trong Python, không có đối tượng nào được thực hiện bởi lớp Nonetype.None is an object implemented by the NoneType class.

>>> type(None)

Trong Python, không ai đại diện cho sự vắng mặt của một giá trị trong một biến. Trong Python, không có gì là một null trong các ngôn ngữ lập trình thường được sử dụng khác.None represents an absence of a value in a variable. In Python, None is what would be a null in other commonly used programming languages.

Không giống như null trong các ngôn ngữ khác, Python không có gì không liên quan gì đến các giá trị 0 hoặc sai.null in the other languages, Python’s None has nothing to do with values 0 or False for example.

>>> None == False
False
>>> None == 0
False

Trong hướng dẫn này, bạn sẽ tìm hiểu làm thế nào đối tượng không so sánh với:None object compares with the:

  • 0 Số nguyên integer
  • Boolean sai boolean
  • Null khái niệm notion
  • "Không xác định" khái niệmUndefined” notion
  • Lớp không định vị class

Trong Python, không có gì không giống 0.None is not the same as 0.

Sự khác biệt giữa không và 0 trong Python là:None and 0 in Python is that:

  • Không có đối tượng nào được thực hiện bởi lớp Nonetype. Chỉ có một đối tượng không có trong chương trình của bạn. object is implemented by the NoneType class. There is only one None object in your program.
  • 0 là một đối tượng số nguyên được thực hiện bởi lớp INT. Có thể có nhiều đối tượng số nguyên trong Python. is an integer object implemented by the int class. There can be many integer objects in Python.

Không có vs sai trong python

Trong Python, không có gì không liên quan gì đến giá trị boolean sai.None has nothing to do with the boolean value False.

  • Không có trong Python thực sự là một đối tượng được thực hiện bởi lớp nonetype. in Python is actually an object implemented by NoneType class.
  • Sai là một đối tượng Boolean được thực hiện bởi lớp Bool. is a boolean object implemented by the bool class.

Cách duy nhất không và sai có liên quan trong Python là giá trị sự thật của không có là sai. Điều này có nghĩa là khi bạn chuyển đổi không có gì thành boolean, bạn sẽ nhận được sai:None and False are related in Python is that the truth value of None is False. This means when you convert None to a boolean, you get a False:

>>> None == False
False
>>> bool(None) == False
True

Không có vs null trong python

Trong Python, không có thứ gọi là null. Phiên bản Python của NULL là đối tượng không có đối tượng. Do đó, một so sánh kỹ thuật giữa null và không ai là vô nghĩa.null. Python’s version of null is the None object. Thus a technical comparison between a null and a None is meaningless.

Trong một số ngôn ngữ lập trình phổ biến khác, con trỏ null hoặc null được sử dụng để biểu thị một biến số trống. Một con trỏ null không chỉ ra bất cứ điều gì. Thông thường, một null được định nghĩa là 0 trong các ngôn ngữ đó.null or null pointer is used to denote an empty variable. A null pointer does not point to anything. Oftentimes a null is defined to be a 0 in those languages.

Tuy nhiên, trong Python, không có con trỏ null. Thay vào đó, có một đối tượng không được sử dụng cho cùng một mục đích. Không giống như trong các ngôn ngữ lập trình khác với các con trỏ NULL, Python, không có đối tượng nào là một đối tượng hợp lệ. Điều này có nghĩa là nó không phải là 0, sai, hoặc bất cứ điều gì tương tự. Nó là một đối tượng đặc biệt không có đối tượng.null pointer. Instead, there is a None object that is used for the same purpose. Unlike in other programming languages with null pointers, Python’s None object is a valid object. This means it is not 0, False, or anything like that. It is a special None object.

Đôi khi bạn nghe thấy các nhà phát triển nói về Null trong Python. Trong thực tế, họ đang đề cập đến không có đối tượng.null in Python. In reality, they are referring to None objects.

Không có vs không xác định trong Python

Trong Python, khái niệm không xác định là mờ.

Khi một biến Python không có, bạn có thể nói một cách lỏng lẻo nó không được xác định. Nhưng về mặt kỹ thuật, nó không phải là. Điều này là do, dưới mui xe, không có đối tượng được xác định rõ ràng nào được thực hiện bởi lớp Nonetype trong Python.None, you could loosely say it is undefined. But technically, it is not. This is because, under the hood, None is a well-defined object implemented by the NoneType class in Python.

Hãy để xem những gì xảy ra khi chúng ta tạo ra một biến số không xác định của người dùng bằng cách gán không cho nó:None to it:

>>> num = None
>>> type(num)

>>> id(num)
9484816

Ở đây bạn có thể thấy rằng loại đối tượng Num Num không xác định là không phải là không phải là. Hơn nữa, nó cũng có ID vì nó chỉ vào một phần cụ thể của bộ nhớ. Vì vậy, mặc dù Num là không có, nó vẫn là một đối tượng Python được xác định rất rõ.num object is NoneType. Furthermore, it also has an ID as it points to a specific part of the memory. So even though num is None, it is still a very well-defined Python object.

Không có vs nonetype trong python

Trong Python, không có đối tượng nào được thực hiện bởi lớp Nonetype.None is an object implemented by the NoneType class.

Nói cách khác, sự khác biệt giữa không có và không định danh trong Python là:None and NoneType in Python is that:

  • Không có đối tượng Python. is a Python object.
  • Nonetype là một lớp thực hiện đối tượng không. is a class that implements the None object.

Sự kết luận

Hôm nay bạn không so sánh với các đối tượng tương tự khác trong Python.None compares with other similar objects in Python.

Tóm lại, không có gì là của Python Python. Nó đại diện cho các biến không xác định của người Viking không có giá trị.None is the “Python’s null“. It represents “undefined” variables that have no value.

Trong Python, không có gì không liên quan gì đến các giá trị 0 hoặc sai.0 or False.

Nói một cách lỏng lẻo, một biến không xác định là một cái gì đó có giá trị là không có. Nhưng không có đối tượng Python hợp lệ nào được xác định rõ. Do đó, không có gì không có nghĩa là không xác định về mặt kỹ thuật.None. But None is also a valid Python object which is well defined. Thus None does not technically mean undefined.

Cảm ơn vì đã đọc.

Mã hóa hạnh phúc!

Đọc thêm

Câu hỏi phỏng vấn Python

Tuyên bố trường hợp chuyển đổi Python

Không ai được coi là đúng trong Python?

Đó là một trong những phương pháp ma thuật của Python.Điều khó hiểu là, bool (không) trả về sai, vì vậy nếu x là không, nếu x hoạt động như bạn mong đợi.Tuy nhiên, có những giá trị khác được đánh giá là sai.Ví dụ nổi bật nhất là một danh sách trống.bool(None) returns False , so if x is None, if x works as you expect it to. However, there are other values that are evaluated as False . The most prominent example is an empty list.

Không có ai boolean trong Python?

Trong Python, không có gì không liên quan gì đến giá trị boolean sai.Không có trong Python thực sự là một đối tượng được thực hiện bởi lớp nonetype.None has nothing to do with the boolean value False. None in Python is actually an object implemented by NoneType class.

0 có đánh giá đúng trong Python không?

Python gán các giá trị boolean cho các giá trị của các loại khác.Đối với các loại số như số nguyên và điểm nổi, các giá trị bằng không là sai và các giá trị khác không là đúng.zero values are false and non-zero values are true.

Có tốt không khi sử dụng không có trong Python?

Không có công cụ mạnh mẽ nào trong hộp công cụ Python.Giống như đúng và sai, không có từ khóa bất biến.Là null trong Python, bạn sử dụng nó để đánh dấu các giá trị và kết quả bị thiếu và thậm chí các tham số mặc định trong đó nó là một lựa chọn tốt hơn nhiều so với các loại có thể thay đổi.. Like True and False , None is an immutable keyword. As the null in Python, you use it to mark missing values and results, and even default parameters where it's a much better choice than mutable types.