計算列表中是否含有被7整除的數(shù)
思路一
建立一個新的被7除的余數(shù)列表,檢測新列表是否含有0
def has_lucky_number(nums):
"""Return whether the given list of numbers is lucky. A lucky list contains
at least one number divisible by 7.
"""
new_nums=[]
for num in nums:
new_nums.append(num % 7)
return 0 in new_nums
這樣的計算效率不高,需要遍歷列表中的所有值诫龙,而問題所需僅是存在一個符合要求的值即可。
思路2
def has_lucky_number(nums):
for num in nums:
if num % 7 == 0:
return True
# We've exhausted the list without finding a lucky number
return False
檢測到第一個符合要求的值計算便結束溢谤。
any() 函數(shù)運用
def has_lucky_number(nums):
return any([num % 7 == 0 for num in nums])
非常簡潔芥颈,一行搞定憋槐。并且同樣在檢測到第一個符合要求的值計算便結束姚建。
參考鏈接:https://www.kaggle.com/wangmiaobeng/exercise-loops-and-list-comprehensions/