Win32Clipboard.GetClipboardData - 格式化

Win32Clipboard.GetClipboardData - Formatting

我有以下代码从剪贴板中读取数据并将其添加到数据库中:

    import win32clipboard, sqlite3
try:
    win32clipboard.OpenClipboard()
    data = win32clipboard.GetClipboardData()
    win32clipboard.CloseClipboard()
    print data[0] # testing
    print data[1] # testing
    test = ''.join(data)
    print test

    conn = sqlite3.connect('DB')
    cur = conn.cursor()
    cur.execute('INSERT INTO Clipboard (Data) VALUES (?)', (test))
    conn.commit()
    conn.close()


except TypeError as e:
    pass
    print e

举个例子,剪贴板数据是"Whosebug".
收到以下错误:

 s
Traceback (most recent call last):
t
Whosebug
  File "clipboard.py", line 13, in <module>
    cur.execute('INSERT INTO Clipboard (Data) VALUES (?)', (test))
sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 1, and there are 13 supplied.  

我假设 "data" 的输出在元组或列表中。所以我尝试以多种方式连接值,上面的连接仅代表测试的一种方式。
任何帮助,将不胜感激。

参数列表必须是一个序列。
您发送字符串 - sqlite 将其作为字母序列读取。
只需添加逗号 (test,) 即可发送包含一个元素的元组或使用列表 [test].