你可以使用以下代码来编写一个谓词来测试一个数值列表中的所有元素是否都是正数:
def all_positive(numbers):
return all(x > 0 for x in numbers)
这个谓词使用了Python的内置函数all()
,它接受一个可迭代对象,并返回一个布尔值,指示可迭代对象中的所有元素是否都满足某个条件。在这里,我们使用一个生成器表达式来检查列表中的每个元素是否大于0。如果列表中的所有元素都大于0,all()
函数将返回True
,否则返回False
。
你可以使用以下代码来测试这个谓词:
numbers = [1, 2, 3, 4, 5]
print(all_positive(numbers)) # 输出 True
numbers = [-1, 2, 3, 4, 5]
print(all_positive(numbers)) # 输出 False
numbers = [1, 2, 3, 4, -5]
print(all_positive(numbers)) # 输出 False
在这个示例中,numbers
列表包含了不同的数值,并分别测试了列表中的所有元素是否都是正数。