str.split(r'\n') doesn't split a string on a newline character in a raw string literal as expected : <p>Suppose I have a string <code>s = hi\nhellon\whatsup</code> and I want to split it.</p>

<p>If I use <code>s.split('\n')</code>, I get the expected output: </p>

<pre><code>['hi', 'hello', 'whatsup']
</code></pre>

<p>However, if I use <code>re.split('\n', s)</code>, it is actually `re.split(r'\n', s) and I also get the same output: </p>

<pre><code>['hi', 'hello', 'whatsup']
</code></pre>

<p>Why does splitting on a raw string literal with <code>re.split()</code> work?</p>

<p>What is this black magic?</p>
