Python 字符转义

比如

sql = '    {''} '  

其中{}内的''就会造成语法错误,Python里面那个东西可以把这个转义一下,加个斜杠神马的。
(自动的哦)

求助

请输入图片描述

阅读 8.5k
6 个回答

好像没啥好办法:http://www.php2python.com/wiki/function.addslashes/
另外我怎么感觉我怎么也拼不出这种字符串出来?

我用__repr__好像能得到你要的效果似乎,你可以试试?

a = ('1', '2', '3')
b = "'%s'" % a.__repr__()
print(b.__repr__())
sql = '    {\'\'} ' 

sql = "    {''} "
新手上路,请多包涵

很简单吧

sql = """{''}"""

正则、字符替换、json.dumps()

楼主是想要拼凑 SQL 语句用的么?

建议不要 php 那种拼凑字符串的方式来搞 SQL,而是在 SQL 语句里用 ? 占位

就是说类似下边的

cu.execute("insert into catalog values('" + value1 + "', '" + value2 + "')")

或者

cu.execute("insert into catalog values('%s', '%s')" % (value1, value2))

这样拼凑 SQL 字符串的做法,
都应该写成类似

cu.execute("insert into catalog values(?, ?)", (value1, value2))

才对。

(还有另一种占位这里先不贴了)。

php 社区常说的 SQL 注入漏洞之类的东西,都是拼凑 SQL 语句害的,
换成占位方式就从源头杜绝了 php 程序那样的安全漏洞。

如果要在字符串里面有'',你可以在外面用""
s="{''}"这样就不会报错了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题