>>> r"what"ever"
SyntaxError: invalid syntax
>>> r"what\"ever"
'what\\"ever'
那么我们如何得到报价而不是斜杠呢?如何在原始Python字符串中包含引号?
而且请不要建议r'what"ever'
,因为那么问题就变成了如何包含两种类型的引号?
>>> r"what"ever"
SyntaxError: invalid syntax
>>> r"what\"ever"
'what\\"ever'
那么我们如何得到报价而不是斜杠呢?如何在原始Python字符串中包含引号?
而且请不要建议r'what"ever'
,因为那么问题就变成了如何包含两种类型的引号?
如果你想使用字符串,但不是单一的双引号报价,你可以使用单引号作为分隔符来代替:
r'what"ever'
如果您需要这两种引号的字符串中的,使用三引号字符串:
r"""what"ev'er"""
如果要包括这两种三引号的字符串在您的字符串(一种非常罕见的情况下),你不能做到这一点,你将不得不使用非原始字符串逃脱。
Python有做琴弦,以下字符串语法将允许您使用双引号不止一种方法:
'''what"ever'''
没关系,答案是原三引号字符串:
r"""what"ever"""
如果您需要任何类型的引用(单,双,和三两个)就可以“合并”(0)的字符串:
>>> 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)原始字符串与非原始字符串:
>>> r'raw_string\n' 'non-raw string\n'
'raw_string\\nnon-raw string\n'
(0):事实上,python解析器加入字符串,它不会创建多个字符串。如果添加“+”运算符,则会创建并合并多个字符串。
dqote='"'
sqote="'"
使用 '+' 操作符和dqote
和squote
变量来得到你所需要的
如果我想你sed -e s/",u'"/",'"/g -e s/^"u'"/"'"/
可以尝试以下
dqote='"'
sqote="'"
cmd1="sed -e s/"+dqote+",u'"+dqote+"/"+dqote+",'"+dqote+'/g -e s/^"u'+sqote+dqote+'/'+dqote+sqote+dqote+'/'
`'单quotes'`和` “”“三重双引号”“”`也可以。 – mtrw 2011-01-07 21:32:47
您错过了* raw *部分的问题。 – mpen 2011-01-07 21:33:54