Hướng dẫn how do you check if all values in a list are empty python? - làm cách nào để bạn kiểm tra xem tất cả các giá trị trong danh sách có phải là python trống không?

Tôi đã tìm ra cách tiếp cận bằng cách sử dụng map chưa được đưa ra

tl;dr

def all_none(l):
    return not any(map(None.__ne__, l))

all_none([None, None, None]) # -> True
all_none([None, None, 8])    # -> False

giải trình

Việc sử dụng

list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
0 là một chút kỳ lạ hơn bạn mong đợi ngay từ cái nhìn đầu tiên. Phương thức này trả về một đối tượng
list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
1 khi được cung cấp một cái gì đó không phải là không có.

Bạn sẽ hy vọng rằng

list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
2 sẽ là một sự thay đổi cho
list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
3, tuy nhiên đó cũng là sự thật! Điều này có nghĩa là sử dụng
list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
4 trên một bộ sưu tập sẽ tạo ra các giá trị thông minh cho mọi thứ.

list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True

Từ các tài liệu Python:

Theo mặc định, một đối tượng được coi là đúng trừ khi lớp của nó định nghĩa một phương thức bool () trả về sai hoặc phương thức Len () trả về khôngbool() method that returns False or a len() method that returns zero

Thay vào đó,

list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
0 trả về
list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
3 cho bất kỳ phần tử
list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
7 nào và đối tượng
list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
1 cho bất cứ điều gì khác:

list(map(None.__ne__, [None, None, 8]))
# -> [False, False, NotImplemented]

Sử dụng điều này, bạn có thể kiểm tra xem các phần tử

list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
9 không phải là
list(map(None.__eq__, [None, None, 8]))
# -> [True, True, NotImplemented]

all(list(map(None.__eq__, [None, None, 8])))
# -> True
7 sẽ trả về
list(map(None.__ne__, [None, None, 8]))
# -> [False, False, NotImplemented]
1. Tôi thích nghĩ đây là 2 phương pháp riêng biệt nếu điều đó giúp với các môn thể dục dụng cụ tinh thần.

def contains_truthy(l):
    return any(map(None.__ne__, l))

def all_none(l):
    return not contains_truthy(l)

Tôi đã không thực hiện bất kỳ điểm chuẩn nào với điều này, nhưng như được đề cập bởi những người khác trong chủ đề này,

list(map(None.__ne__, [None, None, 8]))
# -> [False, False, NotImplemented]
2 sẽ tạo ra kết quả nhanh chóng.

Trong hướng dẫn ngắn này, hãy tìm cách kiểm tra xem danh sách có trống trong Python không. Chúng tôi cũng nhìn vào lý do tại sao bạn cần phải làm điều này để bạn hiểu mục đích tốt hơn.

Làm thế nào để kiểm tra xem một danh sách có trống trong Python không?

Danh sách trống được coi là sai trong Python, do đó hàm

list(map(None.__ne__, [None, None, 8]))
# -> [False, False, NotImplemented]
3 sẽ trả về sai nếu danh sách được thông qua như một đối số. Các phương pháp khác bạn có thể sử dụng để kiểm tra xem danh sách có trống đang đặt nó bên trong câu lệnh IF, sử dụng các phương thức
list(map(None.__ne__, [None, None, 8]))
# -> [False, False, NotImplemented]
4 hoặc so sánh nó với một danh sách trống.

Mục lục: Kiểm tra xem danh sách có trống trong Python không

  • Tại sao bạn kiểm tra xem danh sách có trống trong Python không?
  • Giải pháp 1: Sử dụng phương pháp được đề xuất PEP 8
  • Giải pháp 2: Sử dụng hàm bool ()
  • Giải pháp 3: Sử dụng Len ()
  • Bớt tư tưởng

Tại sao bạn kiểm tra xem danh sách có trống trong Python không?

Giải pháp 1: Sử dụng phương pháp được đề xuất PEP 8for. This also comes in handy while working with strings and numerical operations. And hence it is a good practice to check if a list is empty before proceeding.

Giải pháp 2: Sử dụng hàm bool ()

Trong khi xử lý danh sách, một đặc điểm chính mà hầu hết các nhà phát triển sử dụng là khả năng lặp lại của nó. Điều này có nghĩa là bạn có thể lặp lại thông qua các giá trị trong danh sách làm cho nó phù hợp với các vòng lặp đặc biệt là. Điều này cũng có ích trong khi làm việc với các chuỗi và hoạt động số. Và do đó, đó là một thực tế tốt để kiểm tra xem một danh sách có trống trước khi tiến hành hay không.

Điều này vẫn đúng với tất cả các phép lặp, tức là từ điển, bộ dữ liệu, v.v.

Với cách đó, chúng ta hãy xem xét các phương pháp khác nhau có thể được sử dụng để kiểm tra xem danh sách có trống trong Python không.0, 0.0 or with length 0, are all considered to be false. You can read more about this here.

Giải pháp 1: Sử dụng phương pháp được đề xuất PEP 8:

l1 = ["Hire", "the", "top", "1%", "freelancers"]

l2 = []

if l2:
    print("list is not empty")
else:
    print("list is empty")

#Output: "list is empty"

Giải pháp 1 & 2 Sử dụng một phương pháp gọi là ** Kiểm tra giá trị sự thật **. Điều này về cơ bản có nghĩa là chúng tôi kiểm tra xem danh sách có trống bằng giá trị boolean của nó không. Điều này là có thể bởi vì, trong các chuỗi trống Python, các đối số vị trí chứa 0, 0,0 hoặc với chiều dài 0, tất cả đều được coi là sai. Bạn có thể đọc thêm về điều này ở đây.False, the condition is false and hence we are able to identify an empty list. Feel free to change the condition with l1.

Vì phương pháp này, chúng ta có thể kiểm tra xem danh sách có trống trong Python không. Và dưới đây là cách pythonic nhất để kiểm tra giống nhau.not.

sl1 = ["Hire", "the", "top", "1%", "freelancers"]

l2 = []

if not l2:
    print("list is  empty")
else:
    print("list is not empty")

# Output: "list is empty"

Đây là một cách tiếp cận tương tự tuy nhiên chúng tôi sử dụng không trong vòng lặp. Nó đảo ngược giá trị và do đó điều kiện trở thành đúng. Phương pháp này được sử dụng để tăng khả năng đọc như một nhà phát triển có thể nhập mã mong muốn theo cách khác.not in the loop. It inverses the value and hence the condition becomes true. This method is used to increase readability as a developer could type the desired code under the else.

Giải pháp 2: Sử dụng hàm bool ()

Tương tự như phương thức đầu tiên, chúng tôi kiểm tra xem danh sách có trống bằng hàm bool () không. Hàm bool () trả về giá trị boolean của một đối tượng i.e true hoặc false. Mã này cũng rất giống với phương thức đầu tiên. Lựa chọn giữa hai phương pháp sẽ sôi sục với một lựa chọn cá nhân.bool() function. The bool() function returns the boolean value of an object i.e true or false. The code is also very similar to the first method. Choosing between the two methods would boil down to a personal choice.

l1 = ["Hire", "the", "top", "1%", "freelancers"]

l2 = []

if bool(l2):
    print("list is empty")
else:
    print("list is not empty")

# Output: "list is empty"

Và vì giá trị là sai, bản in dưới cái khác được trả về.false the print under the else is returned.

Giải pháp 3: Sử dụng Len ()

Trong giải pháp này, chúng tôi sử dụng Len () để kiểm tra xem danh sách có trống không, hàm này trả về độ dài của đối số được truyền. Và với độ dài của một danh sách trống là 0 Nó có thể được sử dụng để kiểm tra xem danh sách có trống trong Python không.len() to check if a list is empty, this function returns the length of the argument passed. And given the length of an empty list is 0 it can be used to check if a list is empty in Python.

Ở đây một lần nữa, có hai kỹ thuật có thể được sử dụng. Phương pháp đầu tiên dựa trên thử nghiệm giá trị sự thật, 0 được coi là sai.0 is considered false.

l1 = ["Hire", "the", "top", "1%", "freelancers"]

l2 = []

if len(l2):
    print("list is not empty")
else:
    print("list is empty")

# Output: "list is empty"

Ở đây vì Len () của L2 là 0, nó được coi là sai và do đó điều kiện trả về đầu ra dưới cái khác.len() of l2 is 0 it is considered false and hence the condition returns the output under the else.

Trong các phương pháp khác, chúng tôi sử dụng một điều kiện để so sánh độ dài của danh sách với 0. Mặc dù phương pháp này rất giống với phương pháp đầu tiên, điều này chủ yếu được sử dụng để giúp cải thiện khả năng đọc.

l1 = ["Hire", "the", "top", "1%", "freelancers"]

l2 = []

if len(l2) == 0:
    print("list is empty")
else:
    print("list is not empty")

# Output: "list is empty"

Và vì điều kiện là đúng, nó trả về giá trị đầu tiên.

Bớt tư tưởng

Như bạn đã thấy, có nhiều cách mà bạn có thể kiểm tra xem danh sách có trống trong Python không. Và đó là một thực tế tốt để sử dụng điều kiện này trước và sau đó làm tổ nếu hoặc cho các vòng lặp của bạn, điều này sẽ giúp giảm các lỗi không mong muốn.if or for loops, this would help reduce unwanted errors.

Và về giải pháp nào sẽ là lựa chọn tốt nhất, nó lại làm cho bạn hiểu biết về ngôn ngữ của bạn. Nếu bạn là người mới bắt đầu, tôi sẽ đề nghị bạn sử dụng các phương thức với Len () == 0 vì nó đơn giản và có thể đọc được. Nếu bạn thành thạo, bạn có thể sử dụng các giải pháp 1 hoặc 2 nhưng một lần nữa tôi khuyên bạn nên sử dụng giải pháp không L2 vì nó dễ đọc hơn.len( )== 0 as it is straightforward and readable. If you are proficient you can use solutions 1 or 2 but again I would recommend using the not l2 solution as it is more readable.

Làm thế nào để bạn kiểm tra xem tất cả các mục trong danh sách có trống không?

Trong giải pháp này, chúng tôi sử dụng Len () để kiểm tra xem danh sách có trống không, hàm này trả về độ dài của đối số được truyền. Và với độ dài của một danh sách trống là 0 Nó có thể được sử dụng để kiểm tra xem danh sách có trống trong Python không.use the len() to check if a list is empty, this function returns the length of the argument passed. And given the length of an empty list is 0 it can be used to check if a list is empty in Python.

Làm thế nào để bạn kiểm tra tất cả các giá trị trong danh sách bằng không trong Python?

Sử dụng hàm All () để kiểm tra xem tất cả các giá trị trong danh sách bằng không, ví dụ: Nếu tất cả (mục == 0 cho mục trong my_list):. Hàm tất cả () sẽ trả về true nếu tất cả các giá trị trong danh sách bằng không và sai nếu không., e.g. if all(item == 0 for item in my_list): . The all() function will return True if all values in the list are zero and False otherwise.

Làm thế nào để bạn kiểm tra xem một danh sách có một yếu tố trống?

Kiểm tra danh sách trống bằng hàm Len ().Hàm Len () được sử dụng để tìm số lượng phần tử trong danh sách.Vì vậy, để kiểm tra xem danh sách có trống hoặc không sử dụng Len (), chúng ta có thể chuyển danh sách trống cho hàm Len () và nếu chúng ta nhận được 0, điều đó có nghĩa là danh sách trống.pass the empty list to the len() function, and if we get 0, that means the list is empty.

Làm thế nào để bạn kiểm tra một mảng trống trong Python?

5 Phương pháp để tìm hiểu xem mảng numpy có trống không:..
Numpy.Bất kỳ () để kiểm tra xem mảng numpy có trống trong Python không ..
Numpy.Kích thước () Phương thức ..
Bằng cách chuyển đổi nó thành danh sách ..
Sử dụng mảng.kích thước().
Bằng cách sử dụng mảng.Phương pháp hình dạng () ..