ald*_*ado 7 python quotes nested
是否可以嵌套两种以上的报价标志?我的意思是我知道',"但如果我需要更多呢?这是允许的:
subprocess.Popen('echo "var1+'hello!'+var2"', shell=True)
Run Code Online (Sandbox Code Playgroud)
Bak*_*riu 10
您可以使用三引号来避免嵌套单引号的任何问题:
subprocess.Popen('''echo "var1+'hello!'+var2"''', shell=True)
Run Code Online (Sandbox Code Playgroud)
如果你想使用相同的三引号作为分隔符和字符串内部,那么你必须转义字符串中的引号:
'''some\'\'\'triple quotes\'\'\'''' -> "some'''triple quotes'''"
Run Code Online (Sandbox Code Playgroud)
或者,你可以依赖这样一个事实:解释器将连接连续的字符串文字,并对字符串的不同部分使用不同的引号:
subprocess.Popen('echo "var1+' "'hello!'" '+var2"', shell=True)
Run Code Online (Sandbox Code Playgroud)
请注意,通过这种方式,您甚至可以将原始字符串与非原始字符串混合:
In [17]: print('non\traw' r'\traw' 'non\traw')
non raw\trawnon raw
Run Code Online (Sandbox Code Playgroud)
三引号有效。您可以使用'''或"""
subprocess.Popen('''echo "var1+'hello!'+var2"''', shell=True)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7119 次 |
| 最近记录: |