title: Run a particular Python function in C# with IronPython
body: <p>So far I have a simple class that wraps a python engine (IronPython) for my use. Although code looks big it's really simple so I copy it here to be more clear with my issue.</p>
  
  <p>Here's the code:</p>
  
  <pre><code>public class PythonInstance
  {
      ScriptEngine engine;
      ScriptScope scope;
      ScriptSource source;
  
      public PythonInstance()
      {
          engine = Python.CreateEngine();
          scope = engine.CreateScope();
      }
  
      public void LoadCode(string code)
      {
          source = engine.CreateScriptSourceFromString(code, Microsoft.Scripting.SourceCodeKind.Statements);
          source.Compile();
      }
  
      public void SetVariable(string key, dynamic variable)
      {
          scope.SetVariable(key, variable);
      }
  
      public void RunCode()
      {
          source.Execute(scope);
      }
  
      public void CallFunction(string function)
      {
          //?????? no idea what to call here
      }
  
  }
  </code></pre>
  
  <p>So, it works great but it only allows me to execute all python script at once... but what I would like to do is to be able to call particular functions from within a pythos script.</p>
  
  <p><strong>So, my question</strong>: How do I call particular function in the loaded script?</p>
  
  <p>I was trying to find some information or tutorials but unfortunately couldn't find anything.</p>