【发布时间】:2019-08-30 03:28:29
【问题描述】:
我在理解以下嵌套列表理解时遇到了一些麻烦。这个表达式中的第一个“真”是做什么的?整体表达如何?
#Use a nested list comprehension to find all of the numbers from 1-1000 that
#are divisible by any single digit besides 1 (2-9)
# comprehension testing truth for divisibilty: [True for divisor in range(2,10) if number % divisor == 0]
results = [number for number in range(1,1001) if True in [True for divisor in range(2,10) if number % divisor == 0]]
#print(results)
【问题讨论】:
-
请注意,
True in [True for divisor in range(2,10) if number % divisor == 0]会更自然地写成any(number % divisor == 0 for divisor in range(2,10))。