async 和 await 是用来定义的异步方法,async 关键字是上下文关键字,原因在于只有当它修饰方法、lambda 表达式或匿名方法时,它才是关键字。 在所有其他上下文中,都会将其解释为标识符。如果 async 关键字修改的方法不包含 await 表达式或语句,则该方法将同步执行。方法将同步...
分类:
其他好文 时间:
2014-11-24 19:06:52
阅读次数:
205
1\在类的构造函数前加上static会报什么错?为什么?2\C# String类型比stringBuilder类型的优势是什么?3\C# 函数Func(string a, string b)用Lambda表达式怎么写?4\数列1,1,2,3,5,8,13...第n位数是多少?用C#递归算法实现5\一...
分类:
其他好文 时间:
2014-11-23 21:26:05
阅读次数:
531
一,Lambda表达式
lambda表达式刚开始用的时候还很不习惯,因为以前用惯了那种先foreach,再逐个判断的麻烦形式,刚开始用lambda都会在脑子里转一下,变成自己让自己舒服的格式,但是写过几行代码后,就会喜欢上这种形式,首先,它比较简洁,其次,和LINQ组合起来用感觉非常贴近SQL;...
分类:
其他好文 时间:
2014-11-23 11:45:56
阅读次数:
214
首先了解什么是命名空间,命名空间是一个”命名->对象“的映射,在python中用dict实现的。而作用域,是指能直接访问到的命名空间。当我们访问一个变量时,会按LEGB的顺序来lookup:L->Local. 即局部变量,比如定义在def或lambda中的变量。E-> Enclosing funct...
分类:
编程语言 时间:
2014-11-23 07:04:21
阅读次数:
199
首先了解什么是命名空间,命名空间是一个”命名->对象“的映射,在python中用dict实现的。
而作用域,是指能直接访问到的命名空间。
当我们访问一个变量时,会按LEGB的顺序来lookup:
L->Local. 即局部变量,比如定义在def或lambda中的变量。E-> Enclosing function locals. 即闭包中的变量。G->Global (modul...
分类:
编程语言 时间:
2014-11-23 01:58:32
阅读次数:
221
解释器的本质 我们换一种语言来写解释器的时候,其实本质和scheme写scheme是一样的,即将输入的一串字符串作为源程序执行而语法和语义均由自己预先设计好并严格执行。 这里我们采用python 来实现我们的第二版的scheme解释器,首先python支持的列表推导式、lambda、模式匹配等语法糖...
分类:
编程语言 时间:
2014-11-23 01:54:09
阅读次数:
1011