Hướng dẫn is none a variable in python? - không phải là một biến trong python?

Từ khóa Python



Định nghĩa và cách sử dụng

Từ khóa None được sử dụng để xác định giá trị null hoặc không có giá trị nào cả.

Không có gì không giống với 0, sai hoặc một chuỗi trống. Không có loại dữ liệu nào của riêng nó (không phải là) và không có ai có thể là không có.


Nhiều ví dụ hơn

Thí dụ

Nếu bạn làm một boolean nếu kiểm tra, điều gì sẽ xảy ra? Không đúng hay sai:

x = không có

Nếu x: & nbsp; in ("Bạn có nghĩ rằng không ai là đúng không?") Elif x là sai: & nbsp; in ("Bạn có nghĩ không có gì là sai không?") Khác: & nbsp; In ("Không có gì là không đúng, hoặc sai, không có gì chỉ là không ...")
  print("Do you think None is True?")
elif x is False:
  print ("Do you think None is False?")
else:
  print("None is not True, or False, None is just None...")

Hãy tự mình thử »


Từ khóa Python


Kiểm tra xem một biến không có trong Python #

Sử dụng toán tử is để kiểm tra xem một biến không có trong Python, ví dụ: if my_var is None:. Toán tử is trả về

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list # 👈️ same list as above print(my_first_list is my_second_list) # 👉️ True print(my_first_list == my_second_list) # 👉️ True
1 nếu các giá trị ở hai bên bên trái và bên phải trỏ đến cùng một đối tượng và nên được sử dụng khi kiểm tra các singleton như None.

Copied!

my_var = None # ✅ Check if variable is None if my_var is None: # 👇️ this runs print('variable is None') # ✅ Check if variable is NOT None if my_var is not None: print('variable is not None')

Câu lệnh

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list # 👈️ same list as above print(my_first_list is my_second_list) # 👉️ True print(my_first_list == my_second_list) # 👉️ True
3 đầu tiên kiểm tra xem biến có lưu trữ giá trị None không và câu thứ hai - nếu biến không lưu trữ giá trị None.

Bạn nên sử dụng toán tử is khi bạn cần kiểm tra xem biến có lưu trữ giá trị None không.

Khi chúng tôi sử dụng is, chúng tôi kiểm tra danh tính của đối tượng.

Hướng dẫn theo phong cách PEP 8 đề cập rằng so sánh với các đơn lẻ như None phải luôn luôn được thực hiện với is hoặc

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list.copy() # 👈️ copy created print(my_first_list is my_second_list) # 👉️ False print(my_first_list == my_second_list) # 👉️ True
1 và không bao giờ là nhà khai thác bình đẳng.

Sử dụng các toán tử bình đẳng (bằng

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list.copy() # 👈️ copy created print(my_first_list is my_second_list) # 👉️ False print(my_first_list == my_second_list) # 👉️ True
2 và không bằng

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list.copy() # 👈️ copy created print(my_first_list is my_second_list) # 👉️ False print(my_first_list == my_second_list) # 👉️ True
3) khi bạn cần kiểm tra xem giá trị có bằng với giá trị khác không, ví dụ:

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list.copy() # 👈️ copy created print(my_first_list is my_second_list) # 👉️ False print(my_first_list == my_second_list) # 👉️ True
4.

Dưới đây là một ví dụ minh họa tốt hơn việc kiểm tra danh tính (is) so với kiểm tra bình đẳng (

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list.copy() # 👈️ copy created print(my_first_list is my_second_list) # 👉️ False print(my_first_list == my_second_list) # 👉️ True
2).

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list # 👈️ same list as above print(my_first_list is my_second_list) # 👉️ True print(my_first_list == my_second_list) # 👉️ True

Chúng tôi đã tuyên bố 2 biến lưu trữ cùng một danh sách.

Chúng tôi đặt biến thứ hai thành biến thứ nhất, vì vậy cả hai biến đều chỉ vào cùng một đối tượng

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list.copy() # 👈️ copy created print(my_first_list is my_second_list) # 👉️ False print(my_first_list == my_second_list) # 👉️ True
7 trong bộ nhớ.

Bây giờ, hãy tạo một bản sao nông của danh sách và gán nó cho biến thứ hai.

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list.copy() # 👈️ copy created print(my_first_list is my_second_list) # 👉️ False print(my_first_list == my_second_list) # 👉️ True

Lưu ý rằng kiểm tra danh tính không thành công. Mặc dù hai danh sách lưu trữ cùng một giá trị, theo cùng một thứ tự, chúng chỉ ra các vị trí khác nhau trong bộ nhớ (chúng không phải là cùng một đối tượng).

Khi chúng tôi sử dụng toán tử bằng kép, Python gọi phương thức

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list.copy() # 👈️ copy created print(my_first_list is my_second_list) # 👉️ False print(my_first_list == my_second_list) # 👉️ True
8 trên đối tượng.

Đó là

Copied!

my_first_list = ['a', 'b', 'c'] my_second_list = my_first_list.copy() # 👈️ copy created print(my_first_list is my_second_list) # 👉️ False print(my_first_list == my_second_list) # 👉️ True
9 gọi

Copied!

my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 139944523741504 my_second_list = my_first_list.copy() print(id(my_second_list)) # 👉️ 139944522293184 print(id(my_first_list) == id(my_second_list)) # 👉️ False
0. Về lý thuyết, phương pháp này có thể được thực hiện theo cách không thể đoán trước, vì vậy việc kiểm tra None với toán tử is trực tiếp hơn.

Bạn có thể sử dụng hàm id () để có được danh tính của một đối tượng.

Copied!

my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 139944523741504 my_second_list = my_first_list.copy() print(id(my_second_list)) # 👉️ 139944522293184 print(id(my_first_list) == id(my_second_list)) # 👉️ False

Hàm trả về một số nguyên, được đảm bảo là duy nhất và không đổi cho tuổi thọ của đối tượng.

Hàm

Copied!

my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 139944523741504 my_second_list = my_first_list.copy() print(id(my_second_list)) # 👉️ 139944522293184 print(id(my_first_list) == id(my_second_list)) # 👉️ False
3 trả về địa chỉ của đối tượng trong bộ nhớ trong CPython.

Nếu hai biến đề cập đến cùng một đối tượng, hàm

Copied!

my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 139944523741504 my_second_list = my_first_list.copy() print(id(my_second_list)) # 👉️ 139944522293184 print(id(my_first_list) == id(my_second_list)) # 👉️ False
3 sẽ tạo ra cùng một kết quả.

Copied!

my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 140311440685376 my_second_list = my_first_list print(id(my_second_list)) # 👉️ 140311440685376 print(id(my_first_list) == id(my_second_list)) # 👉️ True

Chuyển giá trị None cho hàm

Copied!

my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 139944523741504 my_second_list = my_first_list.copy() print(id(my_second_list)) # 👉️ 139944522293184 print(id(my_first_list) == id(my_second_list)) # 👉️ False
3 luôn luôn trả về kết quả tương tự vì chỉ có một trường hợp của None trong chương trình Python.

Copied!

print(id(None)) # 👉️ 9817984 print(id(None)) # 👉️ 9817984

Bạn cũng có thể thấy các ví dụ trực tuyến kiểm tra sự thật.

Copied!

my_var = None # 👇️ checks if variable stores a truthy value if my_var: print('variable is truthy') # 👇️ checks if variable stores a falsy value if not my_var: # 👇️ this runs print('variable is falsy')

Tuy nhiên, điều này rất khác so với kiểm tra rõ ràng nếu một biến lưu trữ giá trị None vì có nhiều giá trị giả khác không phải là None.

Tất cả các giá trị không phải là sự thật được coi là giả mạo. Các giá trị giả trong Python là:

  • Các hằng số được xác định là giả mạo: None

    Copied!

    my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 140311440685376 my_second_list = my_first_list print(id(my_second_list)) # 👉️ 140311440685376 print(id(my_first_list) == id(my_second_list)) # 👉️ True
    1.
  • Copied!

    my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 140311440685376 my_second_list = my_first_list print(id(my_second_list)) # 👉️ 140311440685376 print(id(my_first_list) == id(my_second_list)) # 👉️ True
    2 (không) thuộc bất kỳ loại số nào
  • Trình tự và bộ sưu tập trống:

    Copied!

    my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 140311440685376 my_second_list = my_first_list print(id(my_second_list)) # 👉️ 140311440685376 print(id(my_first_list) == id(my_second_list)) # 👉️ True
    3 (Chuỗi trống),

    Copied!

    my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 140311440685376 my_second_list = my_first_list print(id(my_second_list)) # 👉️ 140311440685376 print(id(my_first_list) == id(my_second_list)) # 👉️ True
    4 (Tuple trống),

    Copied!

    my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 140311440685376 my_second_list = my_first_list print(id(my_second_list)) # 👉️ 140311440685376 print(id(my_first_list) == id(my_second_list)) # 👉️ True
    5 (danh sách trống),

    Copied!

    my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 140311440685376 my_second_list = my_first_list print(id(my_second_list)) # 👉️ 140311440685376 print(id(my_first_list) == id(my_second_list)) # 👉️ True
    6 (Từ điển trống),

    Copied!

    my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 140311440685376 my_second_list = my_first_list print(id(my_second_list)) # 👉️ 140311440685376 print(id(my_first_list) == id(my_second_list)) # 👉️ True
    7 (bộ trống),

    Copied!

    my_first_list = ['a', 'b', 'c'] print(id(my_first_list)) # 👉️ 140311440685376 my_second_list = my_first_list print(id(my_second_list)) # 👉️ 140311440685376 print(id(my_first_list) == id(my_second_list)) # 👉️ True
    8 (phạm vi trống).

Nếu bạn kiểm tra xem một biến có phải là sự thật hay không, bạn đang kiểm tra xem biến không phải là bất kỳ giá trị giả nào đã nói ở trên, không chỉ None.

Không có giá trị nào?

Không có giá trị nào thường được sử dụng để biểu thị 'trống' hoặc 'không có giá trị ở đây'. Nó là một đối tượng tín hiệu; Nó chỉ có ý nghĩa bởi vì tài liệu Python nói rằng nó có ý nghĩa đó. that commonly is used to signify 'empty', or 'no value here'. It is a signal object; it only has meaning because the Python documentation says it has that meaning.

Không có int trong Python?

int (không) ném một ngoại lệ vì không ai không thể chuyển đổi thành int. Câu trả lời cho câu hỏi của bạn là nó không thể được thực hiện. Bạn có thể thay thế một cái gì đó, như 0, hoặc 2771, hoặc một con voi màu hồng, nhưng bất cứ điều gì bạn thay thế, bạn vẫn sẽ không thể chuyển đổi không có gì thành int.

Bạn có thể gán không cho một biến?

Nonetype trong Python là một kiểu dữ liệu chỉ đơn giản là cho thấy một đối tượng không có giá trị/có giá trị không có.Bạn có thể gán giá trị của không cho một biến nhưng cũng có các phương thức trả về không.You can assign the value of None to a variable but there are also methods that return None .

Có phải Python không giống như NULL?

Python sử dụng từ khóa Không có để xác định các đối tượng và biến null.Mặc dù không ai phục vụ một số mục đích giống như null trong các ngôn ngữ khác, nhưng đó là một con thú khác hoàn toàn.Vì null trong Python, không có giá trị nào là 0 hoặc bất kỳ giá trị nào khác.Trong Python, không ai là đối tượng và một công dân hạng nhất!