title: What is the difference between `str` and `object` data types in `pandas.read_csv`?
body: <p>According to the <a href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html" rel="nofollow">pandas documentation</a>, <code>pandas.read_csv</code> allows me to specify a <code>dtype</code> for the columns in the CSV file.</p>
  
  <blockquote>
    <p><strong>dtype</strong> : Type name or dict of column -> type, default None
    Data type for data or columns. E.g. {‘a’: np.float64, ‘b’: np.int32} (Unsupported with engine=’python’). Use <em>str</em> or <em>object</em> to preserve and not interpret dtype.</p>
  </blockquote>
  
  <p>To treat every column as text data, I can use either</p>
  
  <pre><code>df = pandas.read_csv(... , dtype=str)
  </code></pre>
  
  <p>or</p>
  
  <pre><code>df = pandas.read_csv(..., dtype=object)
  </code></pre>
  
  <p>As far as I know, these two methods always behave exactly the same. Are there any situations in which these two methods behave differently? If so, what are the differences?</p>