月度归档:2018年05月

C# 如何像Python一样使用推导式?

小柊 发表于 2018年05月01日 21时51分20秒

序、扯淡

现在我做.net这块并不多,因为现在上班的公司不用.net。为了混口饭吃,就转去做Python开发了。

我一直觉得换一门主力开发语言并不是一件非常困难的事情,因为我认为编程语言只是思想的一种具体表达方式,用于构成一个程序的肉身,而一个程序里最重要的灵魂,是具体的编程思想、算法和设计模式组成的。

所以我也是这么和身边的人这么“传教”的,虽说语言本身也很重要,但算法设计模式等等千万别落下,各个语言自带的语法糖其实都可以用代码实现,万变不离其宗。

 

扯得有些远了,这次的题目主要是因为有个学弟,在我转到Python之后,也跟着转到Python来了。有次谈天的时候我表示不希望他到时候C#半桶水叮当不说,到时候Python也是这样。C#除了国内的就业前景相比之下并不是特别好以外,就语言本身素质来说还是非常不错的,用了这么久的Python,貌似只有Python里的列表切片和负索引(例如-1表示列表倒数第一位元素)以外,没有C#做不到的。

然后这个学弟就给我举反例了:

 

当时因为算是上班时间摸鱼,所以就只是去翻了一下System.Linq命名空间下面的拓展方法,发现没有什么类似的拓展方法后,也就以为C#里的确没有这种写法,后来就没再去注意。

 

最近两天又突然记起这件事情,仔细琢磨了一下,发现自己当时怕是智障了:都想到去翻System.Linq命名空间了,怎么就想不起直接用LINQ呢?

浏览内容