我正在尝试使用 Python 使用目录中的文件名列表填充 sqlite3 数据库。我不确定为什么这不起作用:
conn = sqlite3.connect( "databasefile.db" )
cur = conn.cursor()
cur.execute('CREATE TABLE IF NOT EXISTS filenames (filename TEXT)')
for root, dirnames, filenames in os.walk(directory):
for filename in filenames:
if filename.endswith(".ext"):
cur.executemany('INSERT INTO filenames (filename) VALUES (?)', (filename))
conn.commit()
我希望它在数据库文件中生成这个:
Column
1 1st.ext
2 2nd.ext
3 3rd.ext
但结果却是:
Column
1 1
2 r
3 s
4 t
5 .
6 e
7 x
8 t
9 2
10 n
11 d
12 .
etc.
谁能帮我理解我哪里出错了?
编辑:谢谢,我没有意识到迭代字符串会给出单个字符。添加逗号以使“文件名”成为元组并解析。