繁体   English   中英

Python:将列表转换为字符串项目

[英]Python: Convert List to String Items

我正在尝试将数据插入 SQL

这是代码的一个简单概念:

# Establish Connection to SQL Database
connection = sqlite3.connect("MyDatabase.db")
cursor = connection.cursor()

sql = "INSERT INTO Table_Expenses VALUES DB_QMarks"

data = ['40', '50', '10']

# Execute SQL Query
cursor.execute(sql, data)

当我执行它时,它返回一个错误:

预期:(“1”、“2020-01-04”、“40”、“50”、“10”)

实际结果:("1", "2020-01-04", ['40','50','10'])

DB_QMarks是之前运行的代码,它为数据列表中的每个对象创建一个“(?)”。 数据变量附加到用户输入,因此没有长度的决定因素。 我已经有了为每个对象创建“(?)”的代码。 这不是问题,问题是从数据结果中删除方括号,以便它在 cursor.execute 函数中正常工作。

错误返回“当前语句使用 5 个绑定,仅提供了 3 个”。 如何将列表转换为没有括号的预期字符串。 我尝试转换为字符串,但它用双引号 (") 替换了括号,并且发生了同样的问题。

谢谢

sql_output = ("1", "2020-01-04", ['40','50','10'])
# further processing into string as requested
string_output = ""
for x_val in sql_output:
    if type(x_val) == list:
        for val in x_val:
            string_output += "'" + str(val) + "' "
    else:
        string_output += "'" + str(x_val) + "' "
print(string_output)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM