2024-10-03 09:11:23 发布
网友
遵循python代码的好方法是什么:
I = range(0,5000) ## some list t = somevalue ## for ex. 5 R = [] append1 = R.append for i in I: if i >= t: append1(1) else: append1(0)
这段代码工作得很好,但我认为这不是一个好方法。而且append方法太慢了。在
谢谢!在
清单理解似乎是你需要的:
>>> I = range(0,10) >>> t = 3 >>> R = [1 if i>=t else 0 for i in I] >>> R [0, 0, 0, 1, 1, 1, 1, 1, 1, 1]
您可以使用列表理解:
R = [int(val>=t) for val in I]
根据您的需要,这可能是另一种选择:
import numpy as np I = np.arange(0,500) t = 253 R = 1*(I >= t)
如果R需要是一个列表,可以添加:R.tolist()
R.tolist()
清单理解似乎是你需要的:
您可以使用列表理解:
根据您的需要,这可能是另一种选择:
如果R需要是一个列表,可以添加:
R.tolist()
相关问题 更多 >
编程相关推荐