我遇到了一些连接到 MySQL 数据库的 Python 程序。在代码中,我看到 execute()
函数中的查询包含在 3 个引号("""
) 中。我想知道这是为什么。我还注意到 3 个引号仅在创建、插入和更新表时使用,而不是在选择行时使用。
cursor.execute("""create table student(id char(10),name char(10))""")
cursor.execute("select * from student")
为什么?
最佳答案
它不是必需的——编写它的编码人员只是出于某种原因决定使用它(可能是为了强调那部分)。
三重引号字符串就是:一个字符串。它具有与常规字符串对象相同的属性。只有两个区别:
- 它支持多行。这使您不必在每次需要换行时都放置
\n
。 - 它允许您在不转义的情况下使用单引号和双引号。这对于 SQL 命令可能很有用。
总而言之,三引号字符串是一个字符串:
>>> type("""a""")
<type 'str'>
>>> type("a")
<type 'str'>
>>>
并且在该代码中不需要。
关于python - 为什么我们在从 python 游标执行 sql 查询时需要使用 3 个引号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19479853/