title: How to get filename with argparse while specifying type=FileType(...) for this argument
body: <p>Using the <code>type</code> parameter of the <code>argparse.add_argument</code> method, you can require an argument to be a readable file:</p>
  
  <pre><code>parser.add_argument('--sqlite-file', type=argparse.FileType('r'))
  </code></pre>
  
  <p>As a benefit of specifying this type, argparse checks whether the file can be read and displays an error to the user if not.</p>
  
  <p>Is there a way to obtain the passed filename instead of an instance of <code>io.TextIOWrapper</code> or <code>io.BufferedReader</code>?</p>
  
  <p>Since the filename appears in the string representation of the parser (<code>'sqlite_file': &lt;_io.TextIOWrapper name='data/export.sqlite' ...</code>, or <code>'sqlite_file': &lt;_io.BufferedReader name='data/export.sqlite' ...&gt;</code>) it should be possible.</p>
  
  <p>How to do it?</p>