【问题标题】:Python SQLite Regex ExecuteManyPython SQLite 正则表达式 ExecuteMany
【发布时间】:2019-03-14 18:46:38
【问题描述】:

提前感谢您的帮助。

我在 python 中使用正则表达式并在文本中存储模式。然后我将它存储在一个列表中,并在使用 SQLite 将值插入到表中时调用该列表。但是,我得到一个“str”对象没有属性“executemany”。下面的代码应该可以工作(就像它对 2 的元组一样)并将我的数据插入其中,但它给了我一个错误。

searc_h = re.compile(r'([A-Z]{4}|[A-Z]{3})\s([\d]{4})\s-\s[A-Z]{1}\s\((\d\.\d)')
find_all = list(re.findall(searc_h, texter))

find_all_fin = []
for (a,b,c) in find_all:
    ap = (int(b), str(a), float(c))
    find_all_fin.append(ap)


c.executemany('INSERT INTO Takes VALUES (?, ?, ?)', find_all_fin)
conn.commit()

这是错误 enter image description here

任何帮助或建议将不胜感激。

【问题讨论】:

    标签: python regex sqlite executemany


    【解决方案1】:

    您在两个不同的地方重用变量c,一个用于存储数据库连接,另一个用于将 Regex 结果存储在 for 循环块中。消除它们的歧义,您的代码就可以了。

    【讨论】:

      猜你喜欢
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      • 2010-09-12
      • 2011-08-06
      • 1970-01-01
      • 2023-03-13
      • 2017-11-13
      • 1970-01-01
      相关资源
      最近更新 更多