title: How do I pass arguments to a Python script with IronPython
body: <p>I have the following C# code where I call a python script from C#:</p>
  
  <pre><code>using System;
  using System.Collections;
  using System.Collections.Generic;
  using System.IO;
  using System.Windows.Forms;
  using System.Linq;
  using System.Text;
  using System.Threading.Tasks;
  using IronPython.Hosting;
  using Microsoft.Scripting.Hosting;
  using IronPython.Runtime;
  
  namespace RunPython
  {
      class Program
      {
          static void Main(string[] args)
          {
              ScriptRuntimeSetup setup = Python.CreateRuntimeSetup(null);
              ScriptRuntime runtime = new ScriptRuntime(setup);
              ScriptEngine engine = Python.GetEngine(runtime);
              ScriptSource source = engine.CreateScriptSourceFromFile("HelloWorld.py");
              ScriptScope scope = engine.CreateScope();
              source.Execute(scope);
          }
      }
  }
  </code></pre>
  
  <p>I'm having trouble understanding each line of the code because my experience with C# is limited. How would I alter this code in order to pass a command line argument to my python script when I run it?</p>