title: Disable/Remove argument in argparse
body: <p><strong>Is it possible to remove or disable an argument in argparse, such that it does not show in the help? How?</strong></p>
  
  <p>It is easy to add new arguments:</p>
  
  <pre><code>parser = argparse.ArgumentParser()
  parser.add_argument('--arg1', help='Argument 1')
  parser.add_argument('--arg2', help='A second one')
  </code></pre>
  
  <p>And I know you can override arguments with a new definition by specifying the "resolve" conflict handler:</p>
  
  <pre><code>#In one script that should stand-alone and include arg1:
  
  parser = argparse.ArgumentParser(conflict_handler='resolve')
  parser.add_argument('--arg1', help='Argument 1')
  parser.add_argument('--arg2', help='A second one')
  
  #In another script with similar options
  parser.add_argument('--arg1', help='New number 1')
  </code></pre>
  
  <p>But this still includes arg1 in the help message and results of <code>parse_args</code> Is there anything like</p>
  
  <pre><code>#Wishful thinking
  #In another script with similar options, that shouldn't include arg1
  parser.remove_argument('--arg1')
  </code></pre>
  
  <p>Or another reasonably easy way to achieve this?</p>
  
  <p><strong>Also: Would the approach be different if the argument was a positional argument?</strong></p>
  
  <p>Note: the problem with removing <code>arg1</code> after parsing as suggested <a href="https://stackoverflow.com/q/19430496/1224158">here</a> is that the argument still shows in the help</p>