2024-05-16 21:00:49 发布
网友
我想更改数组中某些元素的值。 例如,我希望所有值为1、2或{}的元素都映射到值1。在
1
2
如何使用“或”运算符?或者任何能做我想做的接线员。我尝试了下面的代码和其他一些不同的方法,但没有一个能满足我的需要:
samples = [1,2,3,4,5,6,7,8] print samples samples[samples == 1 or samples == 2 or samples == 3] = 1 print samples
我需要的输出是:
使用or的示例;这并不比接受的答案更好,除非您正在玩代码golf:)
or
samples = [int(i in (1, 2, 3)) or i for i in samples]
这利用了int(True)返回{}这一事实。在
int(True)
使用list comprehension生成新列表:
samples = [1 if i in (1, 2, 3) else i for i in samples]
它使用conditional expression在1或原始值之间进行选择。在
使用
or
的示例;这并不比接受的答案更好,除非您正在玩代码golf:)这利用了}这一事实。在
int(True)
返回{使用list comprehension生成新列表:
它使用conditional expression在
1
或原始值之间进行选择。在相关问题 更多 >
编程相关推荐