2013-06-21 77 views
3

有没有办法在D范围内创建一个步骤? 例如,在蟒蛇, 范围(1,10,2) 给我在D中逐步扫描范围

 [1, 3, 5, 7, 9] 

内1中的所有可能性.. 10

有没有办法使用的foreach为此在d?

foreach(x; 1 .. 10) { 
} 

我知道我可以使用丝毫(开始,结束,步骤),但我也想为int添加到最开始,我不知道该怎么类型结果转换为int。

+0

周围走另一条路是什么,你的“一个int到一开始”的意思是? 'iota(1,10,2)'*的结果是*'int'。 – kennytm

+0

我正在建立一系列质数 - > iota(3,16,2)。我需要在开头添加一个2。 –

回答

6

chain([2],iota(3,16,2));

chain会连接范围懒洋洋地

,或者你可以用filter!q{a==2||a&1}(iota(2,16));

+1

'iota',而不是'itoa'。 – kennytm