1. import System 直接导入System这个Namespace; 2. from System.Math import* 导入System.Math类中所有方法,之后就可以直接调用了。Sin(PI/2)就是一个例子,不需要用Math.Sin(PI/2)这种方式了。特别需要注意的是,当你没有显式导入Math这个Class的时候,即使导入了其中的所有方法,使用Math.Sin(PI/2)也是会报错的。毕竟IronPython并不知道Math是什么东东,除非你告诉它; 3. from System import Random 导入System.Random类; 4. r = Random() 构造Random类的一个实例,类似C#的 Random r = new Random(); 5. [r.Next(0,100) for i in range(10)] 构造一个元素个数为10的List,该List的元素是0到100范围内的随机数。这是常见的构造List的方法,前面的r.Next(0,100)部分表示生成List元素的规则,而for后面的部分则表示执行该规则的次数;
1. import System 直接导入System这个Namespace; 2. from System.Math import* 导入System.Math类中所有方法,之后就可以直接调用了。Sin(PI/2)就是一个例子,不需要用Math.Sin(PI/2)这种方式了。特别需要注意的是,当你没有显式导入Math这个Class的时候,即使导入了其中的所有方法,使用Math.Sin(PI/2)也是会报错的。毕竟IronPython并不知道Math是什么东东,除非你告诉它; 3. from System import Random 导入System.Random类; 4. r = Random() 构造Random类的一个实例,类似C#的 Random r = new Random(); 5. [r.Next(0,100) for i in range(10)] 构造一个元素个数为10的List,该List的元素是0到100范围内的随机数。这是常见的构造List的方法,前面的r.Next(0,100)部分表示生成List元素的规则,而for后面的部分则表示执行该规则的次数;
1. class MyRandom(Random): pass:定义类MyRandom,该类继承了Random类。而后面的pass则表示一条空语句,这跟C#中直接写一个分号(;)是一样的; 2. mr = MyRandom(): 构建MyRandom类的实例; 3. mr.foo =42:为MyRandom的实例mr增加了一个名为foo的数据成员,并赋值42,接着就可以利用mr.foo访问该数据成员了; 4. def Sample(self): return0.5: 定义了一个名为Sample的function,虽然参数self并没有在function体中用到,但这是为了将该function能够被类实例使用,才使用了该参数; 5. MyRandom.Sample = Sample:在类定义的层面上增加(或者是改写,在这里就是改写,因为父类中定义了Sample方法)Sample方法,并将Sample这个function的定义赋值给MyRandom.Sample这个方法,就类似于C#在类定义的时候增加方法定义; 6. [mr.Next(0,100) for i in range(10)]:这个时候,由于改写了Sample方法,而Next方法需要依靠Sample方法的返回结果,因此得到的不再是随机数列了; 7. def Sample(self): return0.8+0.2*super(MyRandom, self).Sample():重新定义了Sample function。在这里使用super这个类型的构造函数获得了MyRandom的父类Random的一个实例,然后调用它的Sample方法,这使得[mr.Next(0,100) for i in range(10)]再次返回随机数列,但该数列的范围已经变成了80-100;
1. import System 直接导入System这个Namespace; 2. from System.Math import* 导入System.Math类中所有方法,之后就可以直接调用了。Sin(PI/2)就是一个例子,不需要用Math.Sin(PI/2)这种方式了。特别需要注意的是,当你没有显式导入Math这个Class的时候,即使导入了其中的所有方法,使用Math.Sin(PI/2)也是会报错的。毕竟IronPython并不知道Math是什么东东,除非你告诉它; 3. from System import Random 导入System.Random类; 4. r = Random() 构造Random类的一个实例,类似C#的 Random r = new Random(); 5. [r.Next(0,100) for i in range(10)] 构造一个元素个数为10的List,该List的元素是0到100范围内的随机数。这是常见的构造List的方法,前面的r.Next(0,100)部分表示生成List元素的规则,而for后面的部分则表示执行该规则的次数;
不可错过的MSDN TV —— IronPython: Python on the .NET Framework (上)(转)
转From:http://perhaps.cnblogs.com/archive/2005/12/27/305253.html今天我们主要对MSDN TV上的一个视频节目——IronPython: Python on the .NET Framework做一些讨论。这个视频早在11月10日就发布出来了(不得不再次BS一下自己的懒惰),而做秀者正是大名鼎鼎的IronPython之父——Jim Hug