擅长:python、mysql、java
<p>没有原始字符串这样的东西。只有原始字符串<em>文本</em>。在</p>
<p>它是你在Python源代码中键入的东西。在</p>
<p><code>r'\$amystring'</code>和<code>'\\$amystring'</code>是相同的<em>strings对象</em>,尽管使用不同的string<em>字符串文本来表示。在</p>
<p>As <a href="https://stackoverflow.com/a/28460565/4279">@Jonathan Villemaire-Krajden said</a>:如果没有<code>shell=True</code>,则不需要转义<code>$</code>shell元字符。只有在shell中运行命令时才需要它:</p>
<pre><code>$ python -c 'import sys; print(sys.argv)' "\$amystring"
['-c', '$amystring']
</code></pre>
<p>注意:输出中没有反斜杠。在</p>
<p>不要使用<code>.communicate()</code>,除非使用<code>PIPE</code>重定向标准流,否则可以使用<code>call()</code>,<code>check_call()</code>:</p>
^{pr2}$
<p>要在Python中模拟<code>$amystring</code>sed命令(±newlines):</p>
<pre><code>with open('/home/map/myfile', 'a') as file:
print('mystring', file=file)
</code></pre>