C#中有没有类似于Python的range(12)的函数?
这事儿我时不时就遇到:我在写C#代码的时候,特别想用Python里的range()
函数。
我知道可以用
for (int i = 0; i < 12; i++)
{
// add code here
}
但是这样在一些功能上就不太好用了,比如我想用Linq的Sum()
,而不是写上面的循环。
有没有什么内置的解决办法?我想我可以自己写一个,用yield
之类的,但这样的话就太麻烦了,能直接用就好了。
5 个回答
8
Enumerable.Range(start, numElements);
当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。
17
为了补充大家的回答,我想说一下,Enumerable.Range(0, 12);
更像是 Python 2.x 中的 xrange(12)
,因为它是一个可枚举的对象。
如果有人特别需要一个列表或数组:
Enumerable.Range(0, 12).ToList();
或者
Enumerable.Range(0, 12).ToArray();
这些更接近于 Python 的 range(12)
。
101
你在找的是Enumerable.Range
这个方法:
var mySequence = Enumerable.Range(0, 12);