gpt4 book ai didi

Python 字符串 - 奇怪的替换行为

转载 作者:太空宇宙 更新时间:2023-11-03 10:47:47 26 4
gpt4 key购买 nike

我有一个函数,我在其中获取一个字符串作为参数。我想将这个字符串保存到数据库中。所以我有一个像这样的命令:

    sql_command = """INSERT INTO some_table(some_text_row) VALUE (
'{0}');""".format(some_text)

但是参数可以包含'这样的字符。所以我需要替换这种字符。我使用此功能执行此操作:

    some_text = given_parameter.replace("'", r"\'")

但现在出现了奇怪的行为:有时,我得到 \\' 的结果,有时我得到 \' 的结果。我想要第二个。

为您提供更多信息:given_parameter 是网页的 HTML 代码。我从名为 requests

的库中获取 HTML 代码

有人有小费吗?

最佳答案

不要使用字符串格式构造查询 - 这是不安全的,您会使它容易受到 SQL injections 的攻击.

相反,参数化查询并让 mysql 驱动程序担心引号:

sql_command = """
INSERT INTO
some_table(some_text_row)
VALUES
(%s)"""
cursor.execute(sql_command, (some_text, ))

关于Python 字符串 - 奇怪的替换行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28953518/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com