Nhiều ngôn ngữ lập trình sử dụng NULL để thể hiện một con trỏ không chỉ ra bất cứ điều gì. Nó có một trình giữ chỗ khi một biến trống hoặc để đánh dấu các tham số mặc định mà bạn đã cung cấp. NULL thường được định nghĩa là 0 trong các ngôn ngữ đó, nhưng null trong Python khác nhau.Null to represent a pointer that doesn’t point to anything. It’s a placeholder when a variable is empty or to mark default parameters you haven’t supplied. The Null is often defined as 0 in those languages, but the Null in Python differs.
Ở đó, không có null & nbsp; trong Python; Thay vào đó, không có ai. Pythonnull được gọi là không, một đối tượng đặc biệt đại diện cho sự vắng mặt của một giá trị. Nullobject là singleton không có. Một số giá trị duy nhất trong Python chứng minh rằng một biến số không chỉ ra bất cứ điều gì.null in Python; instead, there’s None. Python null is called None, a special object representing the absence of a value. The null object is the singleton None. “Null” is a unique value in Python that demonstrates that a variable doesn’t point to anything.
Nhiều người sẽ lập luận rằng từ "null" có phần bí truyền, nhưng Null không chính xác là từ thân thiện nhất đối với người mới lập trình.null” is somewhat esoteric, but Null is not precisely the friendliest word to programming novices.
Người không có người khác đề cập chính xác đến chức năng dự định - nó không là gì và không có hành vi. Trong Python, không ai là đối tượng và công dân hạng nhất!“None” refers precisely to the intended functionality – it is nothing and has no behavior. In Python, None is the object and first-class citizen!
Tại sao Null quan trọng trong Python?
Nullmatters trong Python vì nó đại diện cho sự vắng mặt của giá trị. NULL có thể được sử dụng như một trình giữ chỗ cho một giá trị không xác định hoặc không nổi bật. Nếu một hàm không trả về bất kỳ giá trị nào, thì nó không trả về không. matters in Python because it represents the absence of value. Null can be used as a placeholder for an unknown or uninitialized value. If a function does not return any value, then it returns None.
Null xứng đáng với một mục đích cụ thể trong Python, và nó không có nghĩa là giá trị 0. Không có hoặc null là một công dân hạng nhất.Null deserves a particular purpose in Python, and it does not mean the value 0. The None or Null is a first-class citizen.
Sự khác biệt giữa null và không có trong Python
Không có null trong Python, như trong các ngôn ngữ lập trình khác. Thay vào đó, không có. NULL thường được định nghĩa là 0 trong các ngôn ngữ lập trình khác nhau, nhưng null trong Python khác nhau.
Python sử dụng không khác vì nó xác định các đối tượng và biến null.
Không ai trong Python
Không có & nbsp; trong python được sử dụng để mô tả một giá trị null hoặc không có giá trị. Không có nghĩa là & nbsp; falsy. Giá trị & nbsp; hoặc một chuỗi trống. Không có dữ liệu nào của riêng nó [không phải là] và chỉ không có gì có thể là không có. in Python is used to describe a null or no value. None means Falsy. value or an empty string. None is data of its own [NoneType], and only None can be None.
Nếu bạn xác định một hàm với câu lệnh trả về hoặc không có giá trị, nó sẽ không trả về.None.
def python_none[]: pass print[python_none[]]
Đầu ra
None
Khi bạn gọi hàm python_none [], nó không trả về không vì không có câu lệnh trả về. Thay vào đó, chỉ có một tuyên bố vượt qua.
Không có giá trị đầu ra nào, nhưng in không cho thấy không có bảng điều khiển Python nào, buộc chúng tôi phải in đầu ra.
Không cho biết các tham số thiếu hoặc mặc định. Ví dụ: không có gì xuất hiện hai lần trong tài liệu cho danh sách.sort.
print[help[list.sort]]
Đầu ra
sort[self, /, *, key=None, reverse=False] Sort the list in ascending order and return None. The sort is in-place [i.e. the list itself is modified] and stable [i.e. the order of two equal elements is maintained]. If a key function is given, apply it once to each list item and sort them, ascending or descending, according to their function values. The reverse flag can be set to sort in descending order.
Khi bạn gọi hàm python_none [], nó không trả về không vì không có câu lệnh trả về. Thay vào đó, chỉ có một tuyên bố vượt qua.
Không có giá trị đầu ra nào, nhưng in không cho thấy không có bảng điều khiển Python nào, buộc chúng tôi phải in đầu ra.
Không cho biết các tham số thiếu hoặc mặc định. Ví dụ: không có gì xuất hiện hai lần trong tài liệu cho danh sách.sort.set a value to None in Python, assign a None object to a variable that becomes None.
data = None
Trong đầu ra, bạn có thể thấy rằng khóa tham số không có giá trị. Điều đó có nghĩa là cần có tham số chính, nhưng chúng tôi chưa cung cấp nó; Đó là lý do tại sao tham số mặc định là không có.None using the assignment operator.
Làm thế nào để đặt một giá trị thành không?
Để đặt giá trị thành không có trong Python, hãy gán một mục tiêu cho một biến mà & nbsp; trở thành không có. is the singleton, and the NoneType class only gives you the same single instance of None. There’s only one None in our Python program.
NoneObj = type[None][] print[NoneObj] # Check if NoneObj is instance of NoneType class print[NoneObj is None]
Trong mã trên, bạn có thể thấy rằng chúng tôi đặt một biến dữ liệu thành không bằng cách sử dụng toán tử gán.
None True
Bằng chứng rằng không có đối tượng nào
Không có ai là singleton và lớp nonetype chỉ cung cấp cho bạn cùng một thể hiện duy nhất của không. Có một số không có trong chương trình Python của chúng tôi.
- Nó cho đầu ra sau. is not the same as False.
- & nbsp; mặc dù bạn cố gắng tạo phiên bản mới, bạn vẫn nhận được không có. is not an empty string.
- Sự thật thú vị về không is not 0.
- Không có gì không giống như sai.None to anything will always return False except None itself.
Không có chuỗi trống nào.
Không có là 0.
So sánh không có gì với bất cứ điều gì sẽ luôn trả về sai ngoại trừ không có & nbsp; chính nó.Null.
Tuyên bố không có trong Python
data = None print[None]
Đầu ra
None
Khi bạn gọi hàm python_none [], nó không trả về không vì không có câu lệnh trả về. Thay vào đó, chỉ có một tuyên bố vượt qua.NameError.
print[data]
Đầu ra
None0
Khi bạn gọi hàm python_none [], nó không trả về không vì không có câu lệnh trả về. Thay vào đó, chỉ có một tuyên bố vượt qua.None. If you don’t define a variable and directly try to print in the console, you will get NameError.
Không có giá trị đầu ra nào, nhưng in không cho thấy không có bảng điều khiển Python nào, buộc chúng tôi phải in đầu ra.
Không cho biết các tham số thiếu hoặc mặc định. Ví dụ: không có gì xuất hiện hai lần trong tài liệu cho danh sách.sort.return a null in Python, use the None keyword. There is no such term as “return null” in Python. Instead, every function returns some value.
Trong đầu ra, bạn có thể thấy rằng khóa tham số không có giá trị. Điều đó có nghĩa là cần có tham số chính, nhưng chúng tôi chưa cung cấp nó; Đó là lý do tại sao tham số mặc định là không có..
None1
Đầu ra
None2
Khi bạn gọi hàm python_none [], nó không trả về không vì không có câu lệnh trả về. Thay vào đó, chỉ có một tuyên bố vượt qua.
Không có giá trị đầu ra nào, nhưng in không cho thấy không có bảng điều khiển Python nào, buộc chúng tôi phải in đầu ra.check if a variable is null in Python, use the “is not” operator. Python “is” and “is not” operators are comparison operators that compare the identity of two objects. For example, python “is operator” is an identity test. It checks whether the right-hand and left-hand sides are the same object.
None3
Đầu ra
None4
Khi bạn gọi hàm python_none [], nó không trả về không vì không có câu lệnh trả về. Thay vào đó, chỉ có một tuyên bố vượt qua. if condition holds True and print the statement.
Không sử dụng không có một phần của so sánh
Không có null trong Python. Thay vào đó, không có ai. Như đã nêu, cách chính xác nhất để kiểm tra rằng một cái gì đó đã được đưa ra như một giá trị là sử dụng toán tử nhận dạng, kiểm tra hai biến đề cập đến cùng một đối tượng.
Trong Python, để thể hiện sự vắng mặt của giá trị, bạn có thể sử dụng none & nbsp; value [loại.nonetype.none] cho các đối tượng và & nbsp;None value [types.NoneType.None] for objects and “” [or len[] == 0] for strings.
Liên quan đến sự khác biệt giữa các ứng dụng của == và và các thử nghiệm, đối với nhận dạng đối tượng bằng cách sử dụng, ===.
Tuy nhiên, vì hoạt động, hoạt động được định nghĩa là một hoạt động nhận dạng đối tượng, nên có lẽ sử dụng nó đúng hơn là thay vì sử dụng nó. Không chắc chắn nếu có một sự khác biệt tốc độ.is” is defined as an object identity operation, it is probably more correct to use it rather than “==”. Not sure if there is even a speed difference.
Khi kiểm tra không có giá trị, một quy tắc thiết yếu của ngón tay cái là ghi nhớ & nbsp;
- Không sử dụng toán tử nhận dạng là và không.
- Không sử dụng các toán tử bình đẳng == và! =.
Sự khác biệt giữa == và Python là toán tử.
Sự khác biệt giữa == và IS & nbsp; toán tử & nbsp; in & nbsp; python là toán tử == so sánh các giá trị của cả hai toán hạng và kiểm tra công bằng giá trị. Đồng thời, là toán tử kiểm tra xem cả hai toán hạng có đề cập đến cùng một đối tượng không. & NBSP;is operator in Python is that the == operator compares the values of both the operands and checks for value equality. At the same time, is operator checks whether both operands refer to the same object.
Xem mã sau.
None5
Xem đầu ra sau.
None6
Bây giờ, xem mã sau.
None7
Đầu ra
None8
Mã này không trả về không và chúng tôi kiểm tra xem dữ liệu có thực sự không có.
Nhưng, các toán tử bình đẳng có thể bị lừa khi bạn so sánh các đối tượng do người dùng xác định ghi đè chúng.override them.
None9
Đầu ra
print[help[list.sort]]0
Mã này không trả về không và chúng tôi kiểm tra xem dữ liệu có thực sự không có.== returns the incorrect answer.
Nhưng, các toán tử bình đẳng có thể bị lừa khi bạn so sánh các đối tượng do người dùng xác định ghi đè chúng.is operator” returns the correct answer because it can’t be fooled because you can’t override it.
Toán tử bình đẳng == trả về câu trả lời không chính xác.
Danh tính là người vận hành là người vận hành trả lời câu trả lời chính xác bởi vì nó có thể bị lừa bởi vì bạn có thể ghi đè lên nó.
Kiểm tra loại không
print[help[list.sort]]1
Đầu ra
print[help[list.sort]]2
Mã này không trả về không và chúng tôi kiểm tra xem dữ liệu có thực sự không có.
Nhưng, các toán tử bình đẳng có thể bị lừa khi bạn so sánh các đối tượng do người dùng xác định ghi đè chúng.
print[help[list.sort]]3
Toán tử bình đẳng == trả về câu trả lời không chính xác.
print[help[list.sort]]4
Danh tính là người vận hành là người vận hành trả lời câu trả lời chính xác bởi vì nó có thể bị lừa bởi vì bạn có thể ghi đè lên nó.
Kiểm tra loại không
- Trong các ngôn ngữ lập trình khác, NULL chỉ là một từ đồng nghĩa với 0, nhưng null trong Python là một đối tượng.: This item will be added to the list if we pass when calling the function.
- Kiểm tra loại không sử dụng phương thức loại [].: As a default parameter, the list should be None, but if we pass any argument explicitly, it will return the initial list.
print[help[list.sort]]5
Đầu ra
print[help[list.sort]]6
Mã này không trả về không và chúng tôi kiểm tra xem dữ liệu có thực sự không có.
- Nhưng, các toán tử bình đẳng có thể bị lừa khi bạn so sánh các đối tượng do người dùng xác định ghi đè chúng.
- Toán tử bình đẳng == trả về câu trả lời không chính xác.
Danh tính là người vận hành là người vận hành trả lời câu trả lời chính xác bởi vì nó có thể bị lừa bởi vì bạn có thể ghi đè lên nó.
Kiểm tra loại không
Trong các ngôn ngữ lập trình khác, NULL chỉ là một từ đồng nghĩa với 0, nhưng null trong Python là một đối tượng.None as we have a list of items in data, so that that condition will be False.
Kiểm tra loại không sử dụng phương thức loại [].
Điều này cho thấy rằng không có đối tượng và kiểu dữ liệu của nó là không định danh.
Không có gì tự nó được xây dựng vào ngôn ngữ như null trong Python. Tuy nhiên, bạn có thể kiểm tra nó bằng cách in dir [__ xây dựng __].
& nbsp; nó sẽ in các mục sẵn sau.
Sử dụng không có giá trị trong Python
print[help[list.sort]]7
Đầu ra
print[help[list.sort]]8
Mã này không trả về không và chúng tôi kiểm tra xem dữ liệu có thực sự không có.DoAppendNone serves as a signal not to append, so you don’t want None. That frees us to insert None whenever we want.
Nhưng, các toán tử bình đẳng có thể bị lừa khi bạn so sánh các đối tượng do người dùng xác định ghi đè chúng.
Toán tử bình đẳng == trả về câu trả lời không chính xác.None.
print[help[list.sort]]9
Danh tính là người vận hành là người vận hành trả lời câu trả lời chính xác bởi vì nó có thể bị lừa bởi vì bạn có thể ghi đè lên nó.None value.
Kiểm tra loại khôngThe value is null.”
Trong các ngôn ngữ lập trình khác, NULL chỉ là một từ đồng nghĩa với 0, nhưng null trong Python là một đối tượng.
sort[self, /, *, key=None, reverse=False] Sort the list in ascending order and return None. The sort is in-place [i.e. the list itself is modified] and stable [i.e. the order of two equal elements is maintained]. If a key function is given, apply it once to each list item and sort them, ascending or descending, according to their function values. The reverse flag can be set to sort in descending order.0
Kiểm tra loại không sử dụng phương thức loại [].
Điều này cho thấy rằng không có đối tượng và kiểu dữ liệu của nó là không định danh.None is the inbuilt constant as soon as you start Python, whether in a module, class, or function. The NonType, by contrast, is not; you’d need to get a reference to it first by querying None for its class.
sort[self, /, *, key=None, reverse=False] Sort the list in ascending order and return None. The sort is in-place [i.e. the list itself is modified] and stable [i.e. the order of two equal elements is maintained]. If a key function is given, apply it once to each list item and sort them, ascending or descending, according to their function values. The reverse flag can be set to sort in descending order.1
Không có gì tự nó được xây dựng vào ngôn ngữ như null trong Python. Tuy nhiên, bạn có thể kiểm tra nó bằng cách in dir [__ xây dựng __].
& nbsp; nó sẽ in các mục sẵn sau.None, but not anymore. Not even as the class attribute or in the confines of a function.
Kiểm tra xem giá trị không
Tại sao làm điều này
sort[self, /, *, key=None, reverse=False] Sort the list in ascending order and return None. The sort is in-place [i.e. the list itself is modified] and stable [i.e. the order of two equal elements is maintained]. If a key function is given, apply it once to each list item and sort them, ascending or descending, according to their function values. The reverse flag can be set to sort in descending order.2
còn hơn là
sort[self, /, *, key=None, reverse=False] Sort the list in ascending order and return None. The sort is in-place [i.e. the list itself is modified] and stable [i.e. the order of two equal elements is maintained]. If a key function is given, apply it once to each list item and sort them, ascending or descending, according to their function values. The reverse flag can be set to sort in descending order.3
Đầu tiên là tương đương với:
sort[self, /, *, key=None, reverse=False] Sort the list in ascending order and return None. The sort is in-place [i.e. the list itself is modified] and stable [i.e. the order of two equal elements is maintained]. If a key function is given, apply it once to each list item and sort them, ascending or descending, according to their function values. The reverse flag can be set to sort in descending order.4
Trong khi giá trị biểu thức == không được áp dụng như thế này,value==None is applied like this,
sort[self, /, *, key=None, reverse=False] Sort the list in ascending order and return None. The sort is in-place [i.e. the list itself is modified] and stable [i.e. the order of two equal elements is maintained]. If a key function is given, apply it once to each list item and sort them, ascending or descending, according to their function values. The reverse flag can be set to sort in descending order.5
Nếu giá trị không có, thì bạn sẽ nhận được những gì bạn mong đợi.
sort[self, /, *, key=None, reverse=False] Sort the list in ascending order and return None. The sort is in-place [i.e. the list itself is modified] and stable [i.e. the order of two equal elements is maintained]. If a key function is given, apply it once to each list item and sort them, ascending or descending, according to their function values. The reverse flag can be set to sort in descending order.6
Điều này là do không có trạng thái đặc biệt trong ngôn ngữ Python. Nó có một giá trị cơ bản ưa thích vì nhiều thuật toán coi nó là đặc biệt.
Trong các kịch bản như vậy, nó có thể được sử dụng làm cờ để báo hiệu rằng điều kiện yêu cầu xử lý đặc biệt, chẳng hạn như đặt giá trị mặc định.
Không có trong Tracebacks
Khi Nonetype xuất hiện trong dấu vết của bạn, điều đó có nghĩa là một thứ mà bạn không mong đợi là không có ai, và bạn đã cố gắng sử dụng nó theo cách mà bạn có thể sử dụng không. Hầu như luôn luôn, nó là vì bạn đang cố gắng gọi một phương pháp trên đó.
sort[self, /, *, key=None, reverse=False] Sort the list in ascending order and return None. The sort is in-place [i.e. the list itself is modified] and stable [i.e. the order of two equal elements is maintained]. If a key function is given, apply it once to each list item and sort them, ascending or descending, according to their function values. The reverse flag can be set to sort in descending order.7
Đầu ra
sort[self, /, *, key=None, reverse=False] Sort the list in ascending order and return None. The sort is in-place [i.e. the list itself is modified] and stable [i.e. the order of two equal elements is maintained]. If a key function is given, apply it once to each list item and sort them, ascending or descending, according to their function values. The reverse flag can be set to sort in descending order.8
Khi chúng tôi xác định một danh sách với một số giá trị ban đầu, nó có thể gọi hàm danh sách.append [] để thêm một phần tử vào danh sách, nhưng khi chúng tôi xác định danh sách là không Danh sách bây giờ không có và đối tượng không có phương thức append [] để làm việc với đó là lý do tại sao nó ném một thuộc tính.AttributeError.
Khi bạn thấy một dấu vết như trên trong mã của bạn, hãy tìm thuộc tính đầu tiên gây ra lỗi. Ở đây, nó là một phương thức EPPEND []. Tiếp theo, bạn sẽ thấy đối tượng bạn đã cố gắng gọi từ đó. Cuối cùng, tìm ra cách đối tượng đó trở thành không có và thực hiện các bước cần thiết để sửa mã của bạn.
Sự kết luận
Không có trong Python là một từ khóa bất biến và công cụ mạnh mẽ như đúng hay sai. Không ai có thể được kiểm tra bằng cách sử dụng hoặc không trong các toán tử. Trong Tracebacks, không ai có thể giúp tìm ra vấn đề chính xác và chúng ta có thể khắc phục nó bằng cách giải quyết vấn đề null. in Python is an immutable keyword and powerful tool like True or False. None can be tested using in or not in operators. In tracebacks, None can help find the exact problem, and we can fix it by solving the Null issue.
Chỉ có thể có một không có trong bất kỳ chương trình Python nào và ngay cả khi bạn tạo một thể hiện của lớp Nonetype, chỉ có thể có một trường hợp.None in any Python program, and even if you create an instance of the NoneType class, there can only be one None.
Đó là nó cho hướng dẫn này.
Bài viết liên quan
Python Kiểm tra Nan
Python isnan