0

怎么做

cursor.execute("create table" + config.table + config.cols)

所有配置名称都在不同的文件中,cols 是这样的列表对象

cols = [
  "name varchar(50)",
  "address varchar(50)",
  "etc "

我有这样的错误

TypeError: cannot concatenate 'str' and 'list' objects

如何连接 str 与列表对象...请帮助!

4

1 回答 1

1

通常当您想将列表(或数组)与字符串组合时,您需要使用 join()。假设 config.table 是一个字符串,而 config.cols 是一个数组/列表,你可能想要这样的东西:

cursor.execute("create table " + config.table + " (" + ", ".join(config.cols) + ")")

这通过在它们之间放置逗号(但不是在第一个之前或最后一个之后)来组合所有单独的列。我还在字段定义周围添加了一个 (),并在单词 table 和表名之间添加了一个空格。

如果它仍然不起作用,请尝试将字符串打印出来,而不是执行它,以确保它是有效的 SQL。

于 2013-06-27T03:35:57.383 回答