Sử dụng toán tử is
để kiểm tra xem một biến có phải là null trong Python hay không, e. g. if my_var is None:
. Toán tử is
trả về True
nếu các giá trị ở 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 đơn lẻ như None
Lưu ý rằng không có giá trị null
trong Python
Đối tượng None
đại diện cho việc không có giá trị. Điều này tương đương với null
trong các ngôn ngữ khác
Nếu bạn cần kiểm tra xem một biến có tồn tại và đã được khai báo hay chưa, hãy sử dụng khối try/except
try:
does_this_exist
print['variable exists']
except NameError:
print['variable doesnt exist']
Câu lệnh is
0 đầu tiên kiểm tra xem biến có lưu trữ giá trị None
hay không và câu lệnh 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 cần kiểm tra xem một 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
Các đề cập so sánh với các đơn lẻ như None
phải luôn được thực hiện với is
hoặc is
8 và không bao giờ là các toán tử đẳng thức
Sử dụng các toán tử đẳng thức [bằng is
9 và không bằng if my_var is None:
0 ] khi bạn cần kiểm tra xem một giá trị có bằng một giá trị khác hay không, e. g. if my_var is None:
1
Đây là một ví dụ minh họa rõ hơn việc kiểm tra danh tính [is
] so với kiểm tra sự bình đẳng [is
9]
Ta đã khai báo 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 trỏ đến cùng một đối tượng if my_var is None:
4 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
Lưu ý rằng việc kiểm tra danh tính không thành công. Mặc dù hai danh sách lưu trữ các giá trị giống nhau, nhưng theo cùng một thứ tự, chúng trỏ đến 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 ta sử dụng toán tử bằng kép, Python gọi phương thức if my_var is None:
5 trên đối tượng
Đó là cuộc gọi if my_var is None:
6 if my_var is None:
7. Về lý thuyết, phương pháp này có thể được thực hiện theo một cách không thể đoán trước, vì vậy việc kiểm tra None
bằng toán tử is
sẽ trực tiếp hơn
Bạn có thể sử dụng hàm để lấy danh tính của một đối tượng
Hàm trả về một số nguyên, được đảm bảo là duy nhất và không đổi trong suốt thời gian tồn tại của đối tượng
Hàm is
0 trả về địa chỉ của đối tượng trong bộ nhớ trong CPython
Nếu hai biến tham chiếu đến cùng một đối tượng, hàm is
0 sẽ cho kết quả tương tự
Truyền giá trị None
cho hàm is
0 sẽ luôn trả về kết quả giống nhau vì chỉ có một phiên bản của None
trong chương trình Python
Bạn cũng có thể xem các ví dụ trực tuyến để kiểm tra tính trung thực
Tuy nhiên, điều này rất khác so với việc kiểm tra rõ ràng xem một biến có lưu trữ giá trị None
hay không bởi vì có nhiều giá trị giả khác không phải là None
Tất cả các giá trị không trung thực được coi là giả. Các giá trị giả trong Python là
- hằng số được xác định là sai.
None
vàis
8 is
9 [không] của bất kỳ loại số nào- trình tự và bộ sưu tập trống.
True
0 [chuỗi trống],True
1 [bộ trống],True
2 [danh sách trống],True
3 [từ điển trống],True
4 [bộ trống],True
5 [phạm vi trống]
Nếu bạn kiểm tra xem một biến có phải là trung thực hay không, thì bạn đang kiểm tra xem biến đó có phải là bất kỳ giá trị giả nào đã nói ở trên hay không, không chỉ là None
Ở đây bạn sẽ sử dụng. isspace[] sẽ giúp chúng tôi xác định xem chuỗi có chứa một số dữ liệu hay chỉ chứa khoảng trắng. . isspace[] có thể được thực hiện như
String1 = " " String2 = "test string" print[String1.issapce[]] print[String2.isspace[]]
Kỹ thuật thứ hai tốt hơn kỹ thuật thứ nhất vì nó giúp chúng ta xác định xem chuỗi chỉ có khoảng trắng hay chuỗi còn chứa một số dữ liệu trong đó. Đầu ra cho đoạn mã trên là
True False
phương thức isspace[] sẽ trả về True nếu chuỗi chỉ chứa khoảng trắng trong đó sẽ in ra Sai nếu chuỗi chứa ngay cả một ký tự không phải khoảng trắng
Kiểu dữ liệu chuỗi trong Python là bất biến, nghĩa là bạn không thể thay đổi một chuỗi khi đã xác định. Một chuỗi có dấu cách là một chuỗi rỗng nhưng có kích thước khác khôngKhi bạn kiểm tra chuỗi trống bằng toán tử len[] or not , nó sẽ tính khoảng trắng là một ký tự trong chuỗi;
Cách kiểm tra chuỗi rỗng trong Python
Để kiểm tra một chuỗi rỗng trong Python,
- Sử dụng không toán tử
- Bằng cách sử dụng hàm len[]
- Sử dụng không + chuỗi. dải[]
- Bằng cách sử dụng không + chuỗi. không gian []
Kiểm tra chuỗi rỗng bằng toán tử not
Toán tử not trong Python kiểm tra chuỗi chỉ có khoảng trắng để không trống, điều này thực tế không phải là True
# app.py strA = "" # checking if string is empty print["Check if the strA is empty : ", end=""] if[not strA]: print["The string is empty"] else: print["No it is not empty"]
đầu ra
Check if the strA is empty : The string is empty
Chuỗi trống và một điều cần lưu ý là chúng tôi thậm chí không đặt khoảng trắng trong chuỗi. Đó là lý do tại sao nó trở lại trống rỗng. Mặt khác, nếu chúng ta đặt một khoảng trắng trong chuỗi, nó sẽ không được tính là trống và toán tử not trả về Sai
# app.py strA = " " # checking if string with space is empty print["Check if the strA with space is empty : ", end=""] if[not strA]: print["The string is empty"] else: print["No it is not empty"]
đầu ra
Check if the strA with space is empty : No it is not empty
Sử dụng hàm len[]
Để kiểm tra một chuỗi rỗng trong Python, hãy sử dụng hàm len[]. Nếu nó trả về 0, chuỗi rỗng; . Nếu chuỗi có thứ gì đó, chuỗi đó sẽ được tính là chuỗi không rỗng; .
strA = "" # checking if string with space is empty print["Check if the string is empty : ", end=""] if[len[strA]]: print["The string is not empty"] else: print["The string is empty"]
đầu ra
________số 8_______Ở đây, nếu điều kiện trở thành Sai vì nó trả về 0, điều đó có nghĩa là điều kiện khác trở thành Đúng và chuỗi trống
Nếu chuỗi chứa khoảng trắng, nó không được tính là chuỗi rỗng
strA = " " # checking if string with space is empty print["Check if the string is empty : ", end=""] if[len[strA]]: print["The string is not empty"] else: print["The string is empty"]
đầu ra
Check if the string is empty : The string is not empty
Khoảng cách trong chuỗi được tính là một ký tự. Đó là lý do tại sao khi bạn kiểm tra chỗ trống, nó sẽ trả về Sai
Bằng cách sử dụng len[] + chuỗi. dải[]
Để kiểm tra một chuỗi rỗng trong Python, hãy sử dụng chuỗi len[] +. phương thức dải []. chuỗi. Phương thức strip[] loại bỏ khoảng trắng khỏi chuỗi
Nếu nó chứa bất kỳ khoảng trắng nào, hàm strip[] sẽ loại bỏ và kiểm tra xem chuỗi có rỗng hay không bằng cách sử dụng hàm len[]
str = " " # checking if string with space is empty print["Check if the string is empty : ", end=""] if[len[str.strip[]]]: print["The string is not empty"] else: print["The string is empty"]
đầu ra
________số 8_______Ở đây, bất kể bạn thêm bao nhiêu khoảng trắng vào chuỗi, nó sẽ loại bỏ tất cả các khoảng trắng và kiểm tra độ dài của chuỗi, và nếu nó trả về 0, điều đó có nghĩa là chuỗi trống;
Check if the strA is empty : The string is empty0
đầu ra
Check if the string is empty : The string is not empty
Trong ví dụ này, bạn có thể thấy rằng chuỗi không trống vì nó có một số ký tự. Vì vậy, phương thức len[] trả về độ dài của chuỗi và nếu điều kiện trả về True
Sử dụng không + chuỗi. không gian []
chuỗi. hàm isspace[] kiểm tra xem chuỗi có chứa khoảng trắng hay không. Nếu chuỗi chứa bất kỳ khoảng trắng nào, thì nó trả về True. Nếu không, nó trả về Sai
Chúng tôi sử dụng kết hợp chuỗi và không phải chuỗi. isspace[] để kiểm tra xem chuỗi có trống hay không, bất kể khoảng trắng
Phương thức này hiệu quả hơn phương thức strip[] vì nó yêu cầu thực hiện thao tác dải, sẽ mất thời gian tải tính toán nếu chuỗi chứa nhiều khoảng trắng
Check if the strA is empty : The string is empty2
đầu ra
________số 8_______Ở đây, chúng ta đang kiểm tra điều kiện phủ định của hàm isspace[] bằng một toán tử. Nếu một trong các điều kiện trở thành Sai, thì do toán tử “và” nếu điều kiện trả về Sai, thì điều kiện khác sẽ được thực thi.