当前位置: 代码迷 >> 综合 >> python三引号嵌套双引号执行结果不对
  详细解决方案

python三引号嵌套双引号执行结果不对

热度:43   发布时间:2024-02-28 06:35:05.0

当python使用三引号嵌套双引号时需要转义,不然可能出现一些意想不到的情况,比如

sql="""
select * from table where GET_JSON_OBJECT(regexp_replace(regexp_replace(param, '2:', '"2":'), '4:', '"4":'), '$.XXX') IN(1)
"""
ht.exec_sql(sql)

当使用pyspark执行上面语句时不会报错,但是结果总是不对,应该在双引号那里加上两个反斜杠转义

sql="""
select * from table where GET_JSON_OBJECT(regexp_replace(regexp_replace(param, '2:', '\\"2\\":'), '4:', '\\"4\\":'), '$.XXX') IN(1)
"""
ht.exec_sql(sql)

 

  相关解决方案