python - 在使用 Python 插入之前检查字符串是否存在于 MySQL 表中

标签 python mysql string

我试图在 Python 脚本中标记化后仅将字符串中的某些值插入表中(即排除常见单词)。

传入的字符串可能看起来像“这是一个我想要解析的字符串,因为它提到了 IOT”。在这些单独的标记/单词中,我想排除诸如“this”“is”“a”“I”“want”等的内容 - 但应保留不太常见的标记,如“string”“parse”等。

目前,我计划有一个可供引用的常用单词表。

虽然我可以做类似INSERT $term$ WHERE NOT IN(SELECT * FROM exceptedterm)的事情,但似乎应该有比构建查询更简单的方法每个术语(因此,每个术语都对数据库进行单独检查)。

是否有一种 Pythonic 方法可以执行 SQL 支持的与 NOT IN()... 等效的操作?也许将 excludes 表读入列表,然后以某种 NOT IN($list$) 格式将标记与其进行比较?

最佳答案

您可以通过以下 python 代码段预处理数据。

首先读取公共(public)表中的所有单词并填充下面的忽略列表。

inp = "this is a string I want to parse because it mentions IOT"
ignored =  ['this', 'is', 'are', 'a', 'to','it','from']
result = [item for item in inp.split() if item not in ignored]
print(result)

将所有忽略的术语添加到忽略列表中。在这里,我们使用列表理解来计算结果。或者,我们可以使用 for 循环来实现相同的目的。

结果是列表。迭代此操作以插入到您的数据库中。

关于python - 在使用 Python 插入之前检查字符串是否存在于 MySQL 表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54452782/

相关文章:

java - 如何检查一个字符串是否包含第二个字符串及其字符的顺序?

python - 将分钟数据转换为每小时数据

python - 如何处理 argparse 中缺少的参数?

php - PDO 选择语句回显

python - 在 Python 中分隔列表元素

javascript - 如何在两个逗号之间获取字符串

python - python中更多的是pythonic?

python - 使用 sqlalchemy 嵌套 SELECT

java - 如何检查java编译查询中的小于条件?

php - 生成随机数并保存在数据库中