Computer >> Máy Tính >  >> Lập trình >> Python

Lần xuất hiện đầu tiên của số True trong Python

Trong bài viết này, chúng tôi bắt buộc phải tìm số khác 0 xuất hiện đầu tiên trong danh sách các số đã cho.

Với liệt kê và tiếp theo

Chúng tôi kiện enumerate để lấy danh sách tất cả các phần tử và sau đó áp dụng hàm tiếp theo để lấy phần tử khác 0 đầu tiên.

Ví dụ

listA = [0,0,13,4,17]
# Given list
print("Given list:\n " ,listA)
# using enumerate
res = next((i for i, j in enumerate(listA) if j), None)
# printing result
print("The first non zero number is at: \n",res)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Given list:
[0, 0, 13, 4, 17]
The first non zero number is at:
2

Với tiếp theo và bộ lọc

Các điều kiện tiếp theo và bộ lọc được áp dụng cho các phần tử của danh sách cùng với biểu thức lambda với điều kiện không bằng không.

Ví dụ

listA = [0,0,13,4,17]
# Given list
print("Given list:\n " ,listA)
# using next,filetr and lambda
res = listA.index(next(filter(lambda i: i != 0, listA)))
# printing result
print("The first non zero number is at: \n",res)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Given list:
[0, 0, 13, 4, 17]
The first non zero number is at:
2