title: Pros and cons of using str() to initialize an empty string literal in Python
body: <p>Unlike in other languages like C#, there is no way to import an empty string from Python standard library. However, there is a built-in function <code>str()</code>, which defaults to an empty string when no argument was supplied.</p>
  
  <p>What would be the pros and cons of using <code>str()</code>--compared to <code>''</code> or <code>empty_str = ''</code>--to denote an empty string? I guess the overhead would be negligible, and it is as readable as <code>''</code> or <code>""</code>. For one thing, it is visually clear that the variable is a <code>str</code> even in Notepad. One obvious disadvantage is that you have to type the keyboard a few more times than <code>''</code> although not as many as <code>empty_str</code>. Can you think of any other merits or demerits?</p>