如何在一个原始的Pythonstring中包含一个报价?
>>> r"what"ever" SyntaxError: invalid syntax >>> r"what\"ever" 'what\\"ever'
那么我们如何得到报价而不是斜线呢?
而且请不要build议r'what"ever'
因为那么问题就变成了如何包含这两种types的引用?
有关
如果你想在string中使用双引号而不是单引号,你可以使用单引号作为分隔符:
r'what"ever'
如果在string中需要两种引号,请使用三引号string:
r"""what"ev'er"""
如果你想在你的string中包含两种三重引号的string(一个极不可能的情况),你不能这样做,你将不得不使用带有转义的非原始string。
如果你需要任何types的引用(对于两者都是单引号,双引号和三引号),你可以“合并”(0)string:
>>> raw_string_with_quotes = r'double"' r"single'" r'''double triple""" ''' r"""single triple''' """ >>> print raw_string_with_quotes double"single'double triple""" single triple'''
你也可以将(0)原始string与非原始string“结合起来”:
>>> r'raw_string\n' 'non-raw string\n' 'raw_string\\nnon-raw string\n'
(0):事实上,pythonparsing器joinstring,它不会创build多个string。 如果添加“+”运算符,则会创build并组合多个string。
Python有多种方法来执行string,下面的string语法将允许您使用双引号:
'''what"ever'''
没关系,答案是三重引号string:
r"""what"ever"""
dqote='"' sqote="'"
使用“+”运算符和dqote
和squote
variables来获得你所需要的
如果我想sed -es/",u'"/",'"/g -es/^"u'"/"'"/
你可以尝试以下的方法: sed -es/",u'"/",'"/g -es/^"u'"/"'"/
dqote='"' sqote="'" cmd1="sed -es/"+dqote+",u'"+dqote+"/"+dqote+",'"+dqote+'/g -es/^"u'+sqote+dqote+'/'+dqote+sqote+dqote+'/'