如何解决如果不同的数字对在 Python 中有奇数产品
我想查找输入字符串是否具有不同数字的奇数产品: 到目前为止,我已经这样做了:
# To get input string into list of integer
input = [int(i) for i in input.split()]
# to get odd numbers
sequence=filter(lambda i: i % 2,sequence)
我想使用一个操作,我可以过滤列表中不同的奇数并相乘直到得到奇数,如果结果不是奇数则返回真返回假。 我是 lamda 和过滤器的新手。 我想知道如何在 Python 中的一个语句中使用它
解决方法
您可以使用 itertools.accumulate
将函数(例如乘法)重复应用于可迭代对象:
>>> from itertools import accumulate
>>> bool(list(accumulate({int(i) for i in input().split() if int(i) % 2},int.__mul__))[-1] % 2)
1 2 3 4 5
True
,
为了过滤列表中不同的奇数,您可以使用列表理解和集合(集合用于获取不同的值)。
input = [int(i) for i in input().split()]
input = list(set([i for i in input if i%2!=0])) # it would give distinct odd values
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。