首页 » 编程设计

python之忽略python中的转义字符

2025年05月04日17rubylouvre

我正在尝试将标题插入数据库。有时标题带有引号并引发错误。

我不能用\"替换引号,因为它认为我正在转义引号。

sql = 'UPDATE `table_name` SET `title`="{}";' 
 
title = 'A "Title" With Quotes' 
 
sql.format(title.replace('"','\"')) 

这会将引号替换为更多引号,因此不会有任何改变。

'UPDATE `table_name` SET `title`="A "Title" With Quotes";' 

如果我尝试转义反斜杠,它不会转义任何内容。

sql.format(title.replace('"','\\"')) 
 
'UPDATE `table_name` SET `title`="A \\"Title\\" With Quotes";' 

请您参考如下方法:

最好的方法是使用三重引号,将里面的文本解释为字符串:

sql = """UPDATE `table_name` SET `title`="{}";"""  

你可以格式化它是你想要的:

sql = """UPDATE `table_name` SET `title`="{}";""".format('A \\"B\\"') 
print(sql) 

输出:

UPDATE `table_name` SET `title`="A \"B\""; 

适用于 MySQL


阅读延展