我正在尝试使用replace
将额外的文字写入此多行字符串的第一行,但它不起作用:
somestr = """For example
("""
print somestr.replace('\\n(', ' you can find')
我期待以下结果:
For example you can find
(
修改
此字符串来自行对象:
cursor.execute("SELECT col1 FROM tbl")
row = cursor.fetchone()
somestr = str(row.col1)
pprint.pprint(locals())
的输出结果为:
{'somestr': '\n\nFor example\n(\n'}
答案 0 :(得分:3)
不要转义换行符,它会正常工作;如果要插入而不是替换,请包含原始文本:
somestr.replace('\n(', ' you can find\n(')
原始字符串不包含字符序列\
,n
,(
,但您的代码正在尝试替换它。相反,该字符串中有一个换行符后跟(
,要创建换行符,您需要使用\n
,而不是\\n
。
演示:
>>> somestr = """For example
... ("""
>>> print somestr.replace('\n(', ' you can find\n(')
For example you can find
(