Các câu trả lời khác đã cung cấp thông tin tốt, nhưng tôi cảm thấy điều này cần phải được làm rõ.
Không, bạn không bao giờ nên sử dụng:
if A:
Nếu những gì bạn cần kiểm tra là:
if A is not None:
Thứ nhất thường sẽ hoạt động như một sự thay thế cho lần thứ hai nhưng thứ nhất là nguồn khó tìm lỗi chung. Ngay cả khi tất cả những gì bạn đang làm là viết một số mã ném nhanh, bạn không nên cho phép mình có thói quen viết mã lỗi. Huấn luyện ngón tay của bạn và tâm trí của bạn để viết và đọc đúng hình thức dài dòng của bài kiểm tra:
if A is not None:
Việc sử dụng phổ biến không có là để xác định các giá trị tham số tùy chọn và đưa ra một biến một giá trị bắt đầu mặc định có nghĩa là "chưa có giá trị" và có chức năng một ý nghĩa của "không có giá trị được xử lý". Nếu bạn viết một chức năng như:
def my_func[a_list, obj=None]:
if obj: # Trying to test if obj was passed
a_list.append[obj]
# do something with a_list
Điều này sẽ hoạt động tốt cho nhiều mục đích sử dụng trong thế giới thực như:
my_func[user_names, "bob"]
Nhưng nếu bất kỳ điều này xảy ra:
my_func[user_names, ""]
my_func[user_names, []]
my_func[user_names, 0]
Sau đó, các đối tượng có độ dài không sẽ không được thêm vào danh sách. Khi mã đầu tiên được viết, bạn có thể biết rằng tên người dùng có độ dài bằng không. Vì vậy, mã ngắn hoạt động tốt. Nhưng sau đó, bạn cố gắng sửa đổi mã để sử dụng một chuỗi trống có nghĩa là một cái gì đó giống như người dùng ẩn danh không có tên và đột nhiên chức năng này ngừng thực hiện những gì nó dự kiến sẽ làm [thêm người dùng chuyển đổi vào danh sách].
Ví dụ: giả sử bạn có logic để xác định khi người dùng được phép đăng nhập bằng văn bản như:
new_user = get_user_name[]
if user_list_ok[my_func[current_users, new_user]]:
# user_list_ok[] tests that no more than 10 users can
# log in at the same time, and that no sigle user can
# can log in more than 3 times at once.
# This user is allowed to log in!
log_user_in[new_user]
Điều này bây giờ tạo ra các lỗi tinh tế và phức tạp trong mã của bạn. Người dùng không ngừng của "" sẽ không được thêm vào danh sách cho bài kiểm tra, vì vậy khi hệ thống đã đạt đến giới hạn 10 người dùng, thử nghiệm vẫn cho phép người dùng anonomous đăng nhập, đẩy số người dùng lên 11. Có thể kích hoạt một lỗi ở một phần khác của hệ thống yêu cầu chỉ có 10 người dùng tối đa.
Khi bạn cần kiểm tra "VAR không có giá trị", bạn nên luôn sử dụng thử nghiệm "không phải là không" lâu hơn mặc dù cảm giác xấu xí và dài dòng.
Được tạo ra: Tháng 9-22, 2021 | Cập nhật: Tháng 10 năm 02, 2021 Một biến có thể lưu trữ các giá trị khác nhau trong Python. Nó có thể có số nguyên, ký tự, float và các giá trị khác.
5 để kiểm tra xem một biến là if A is not None:
6 trong Pythonif A is not None:
7 để kiểm tra xem một biến là if A is not None:
6 trong Pythonif A is not None:
6 trong Pythonif A is not None:
0 và if A is not None:
1 để kiểm tra xem một biến là if A is not None:
6 trong Pythonif A is not None:
6 là một từ khóa đặc biệt trong Python. Điều đó không có nghĩa là giá trị bằng không, nhưng giá trị là null hoặc không có sẵn. if A is not None:
6 là một đối tượng đặc biệt. Loại của nó được gọi là if A is not None:
5.if A is not None:
Đôi khi chúng ta gặp phải một ngoại lệ rằng một biến là của
if A is not None:
5. Vì vậy, chúng ta nên biết cách kiểm tra xem một biến có phải là if A is not None:
6 hay không.Trong hướng dẫn này, chúng tôi sẽ kiểm tra xem một biến có loại
if A is not None:
6 trong Python hay không.Sử dụng từ khóa if A is not None:
5 để kiểm tra xem một biến là if A is not None:
6 trong Python
if A is not None:
if A is not None:
Tuyên bố
def my_func[a_list, obj=None]:
if obj: # Trying to test if obj was passed
a_list.append[obj]
# do something with a_list
1 có thể kiểm tra một điều kiện trong Python. Để kiểm tra xem một biến có phải là if A is not None:
6 hay không, chúng ta có thể sử dụng từ khóa if A is not None:
5. Từ khóa này kiểm tra xem hai biến có đề cập đến cùng một đối tượng hay không.Ví dụ,
a = None
b = 5
if[a is None]:
print["A is None"]
if[b is not None]:
print["B is not None"]
Output:
________số 8Sử dụng chức năng if A is not None:
7 để kiểm tra xem một biến là if A is not None:
6 trong Python
if A is not None:
if A is not None:
Hàm
if A is not None:
7 có thể kiểm tra xem một đối tượng có thuộc về một loại nhất định hay không. Chúng ta có thể kiểm tra xem một biến là if A is not None:
6 bằng cách kiểm tra với def my_func[a_list, obj=None]:
if obj: # Trying to test if obj was passed
a_list.append[obj]
# do something with a_list
8.Nó trả về một tuple, có phần tử đầu tiên là biến có giá trị chúng tôi muốn kiểm tra. Phần tử thứ hai là đúng hay sai, cho dù biến phù hợp với loại bắt buộc hay không.
Ví dụ,
a = None
b = 5
print[[a, isinstance[a, type[None]]]]
print[[b, isinstance[b, type[None]]]]
Output:
if A is not None:
0Sử dụng từ điển để kiểm tra xem một biến là if A is not None:
6 trong Python
if A is not None:
Một từ điển lưu trữ các cặp giá trị khóa trong Python. Chúng ta có thể sử dụng nó để kiểm tra xem một biến có phải là
if A is not None:
6 hay không. Phương pháp này là độc đáo, nhưng nó cung cấp kết quả mong muốn.Xem mã bên dưới.
if A is not None:
1Output:
if A is not None:
2Sử dụng khối if A is not None:
0 và if A is not None:
1 để kiểm tra xem một biến là if A is not None:
6 trong Python
if A is not None:
if A is not None:
if A is not None:
Khối
my_func[user_names, "bob"]
4 trợ giúp trong việc xử lý mã có thể tăng ngoại lệ. Như đã thảo luận trước đó, nếu Python phát hiện một biến là if A is not None:
6 và được vận hành, nó có thể tăng ngoại lệ if A is not None:
5.Chúng tôi có thể làm việc trên mã của mình với biến mà chúng tôi nghi ngờ là
if A is not None:
6 trong khối if A is not None:
0 và nếu biến là if A is not None:
6, thì ngoại lệ sẽ được nâng lên, bị bắt trong khối my_func[user_names, ""]
my_func[user_names, []]
my_func[user_names, 0]
0.if A is not None:
3Output:
if A is not None:
4