Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

119 Commits

Repository files navigation

pythonnet

This fork of http://sourceforge.net/projects/pythonnet/ allows easy calling of python functions from C#.

  • All calls to python should be inside a "using (Py.GIL()) {/* Your code here */}" block.
  • Import python modules using dynamic mod = Py.Import("mod"), then you can call functions as normal, eg mod.func(args).
  • Use mod.func(args, Py.kw("keywordargname", keywordargvalue)) to apply keyword arguments.
  • All python objects should be declared as 'dynamic' type.
  • Mathematical operations involving python and literal/managed types must have the python object first, eg np.pi2 works, 2np.pi doesn't

EG:

staticvoidMain(string[]args){using(Py.GIL()){dynamicnp=Py.Import("numpy");dynamicsin=np.sin;Console.WriteLine(np.cos(np.pi*2));Console.WriteLine(sin(5));doublec=np.cos(5)+sin(5);Console.WriteLine(c);dynamica=np.array(newList<float>{1,2,3});dynamicb=np.array(newList<float>{6,5,4},Py.kw("dtype",np.int32));Console.WriteLine(a.dtype);Console.WriteLine(b.dtype);Console.WriteLine(a*b);Console.ReadKey();}}

outputs:

1.0 -0.958924274663
-0.6752620892
float64
int32
[ 6. 10. 12.]

About

fork of http://sourceforge.net/projects/pythonnet/

Resources

Stars

1 star

Watchers

3 watching

Forks

Releases

Packages

Contributors

Languages