如果包含在一组字符串中,则匹配字符串的 Pythonic 方法

何塞·加西亚

我试图通过使用第一个、第二个和姓氏来匹配名称,无论是否以正确的顺序使用,是否使用所有名称。到目前为止,我已经得到了这段代码并且它有点工作,但我认为这不是正确的做法。你知道另一种方法吗?

数据集中的名称如下所示:

name = 'DAVID SCOTT MUSTAIN'

如果我搜索, , 等'DAVID'我想要的是匹配该名称。到目前为止,我得到的函数如下所示:'MUSTAIN SCOTT''SCOTT DAVID'

def search_name(somename):   
    for full_name in some_dataset:
        if set(somename.upper().split()).issubset(full_name.split()):
            print('match:', full_name)

如果我输入类似'DAV'或 的内容'SCOT',则不会匹配任何内容。即使名称不完整,我应该如何继续进行匹配?如果我将名称拆分为单个字母,它会将每个名称与这些字母匹配,而不检查字母的顺序。

妈妈

您可以使用any检查中的任何名称是否是任何名称somename的子集full_name

def search_name(somename):   
    for full_name in some_dataset:
        if any(n.upper() in fn for n in somename.split() for fn in full_name.split()):
            print('match:', full_name)

这是一个使用sum字典来选择匹配最多的名称的示例

def search_name(somename):  
    matches = {} 
    for full_name in some_dataset:
        matches[full_name] = sum(1 for n in somename.split() for fn in full_name.split() if n.upper() in fn)
    best_matches = [k for k,v in matches.items() if v == max(matches.values()) if v != 0]
    for match in best_matches: 
        print('match:', match)

我确信有更好的方法来编写这个函数,但我睡眠不足..
至于你的第二个问题,也许你可以打印/返回best_matches列表中的所有项目

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将字符串写入文件的pythonic方法是什么?

来自分类Dev

将整数转换为字符串的Pythonic方法

来自分类Dev

将'None'字符串转换为None的Pythonic方法

来自分类Dev

返回字符串中最长单词的Pythonic方法

来自分类Dev

将整数转换为字符串的Pythonic方法

来自分类Dev

将字符串写入文件的pythonic方法是什么?

来自分类Dev

返回字符串中最长单词的Pythonic方法

来自分类Dev

替换字符串开头或结尾的特殊char的pythonic方法

来自分类Dev

替换字符的 Pythonic 方法

来自分类Dev

更多使用pythonic方式替换字符串中的关键字的方法吗?

来自分类Dev

替换字符串中首次出现的一组可能字符的最快方法是什么?

来自分类Dev

替换字符串中的一组字符的最快方法

来自分类Dev

从字符串中的一组单词中查找单词的最佳方法是什么?

来自分类Dev

将列表 L 中的子字符串 l 与字符串 S 进行比较并根据 L 中的 l 编辑 S 的最pythonic 方法?

来自分类Dev

在多个位置切割字符串的pythonic方法是什么?

来自分类Dev

将字符串转换为八进制数的大多数pythonic方法

来自分类Dev

用Pythonic方式通过关联数字对字符串数组进行排序的方法

来自分类Dev

格式化字符串的大多数pythonic方法

来自分类Dev

将整数转换为十六进制转义字符串的Pythonic方法

来自分类Dev

将整数转换为十六进制转义字符串的Pythonic方法

来自分类Dev

在多个位置切割字符串的pythonic方法是什么?

来自分类Dev

迭代字典以将其项转换为字符串的Pythonic方法

来自分类Dev

将字符串拆分为连续、重叠的单词列表的最pythonic 方法是什么

来自分类Dev

如果列表中的子字符串,python替换字符串中的子字符串// pythonic方式

来自分类Dev

使用熊猫搜索包含在多列中的字符串的有效方法

来自分类Dev

检查从查询返回的任何行是否包含在字符串中的最高效方法?

来自分类常见问题

检查字符串中的一组字母是否为变量的有效方法?

来自分类Dev

存储一组字符串的最佳方法是什么

来自分类Dev

什么是pythonic中的pythonic?

Related 相关文章

  1. 1

    将字符串写入文件的pythonic方法是什么?

  2. 2

    将整数转换为字符串的Pythonic方法

  3. 3

    将'None'字符串转换为None的Pythonic方法

  4. 4

    返回字符串中最长单词的Pythonic方法

  5. 5

    将整数转换为字符串的Pythonic方法

  6. 6

    将字符串写入文件的pythonic方法是什么?

  7. 7

    返回字符串中最长单词的Pythonic方法

  8. 8

    替换字符串开头或结尾的特殊char的pythonic方法

  9. 9

    替换字符的 Pythonic 方法

  10. 10

    更多使用pythonic方式替换字符串中的关键字的方法吗?

  11. 11

    替换字符串中首次出现的一组可能字符的最快方法是什么?

  12. 12

    替换字符串中的一组字符的最快方法

  13. 13

    从字符串中的一组单词中查找单词的最佳方法是什么?

  14. 14

    将列表 L 中的子字符串 l 与字符串 S 进行比较并根据 L 中的 l 编辑 S 的最pythonic 方法?

  15. 15

    在多个位置切割字符串的pythonic方法是什么?

  16. 16

    将字符串转换为八进制数的大多数pythonic方法

  17. 17

    用Pythonic方式通过关联数字对字符串数组进行排序的方法

  18. 18

    格式化字符串的大多数pythonic方法

  19. 19

    将整数转换为十六进制转义字符串的Pythonic方法

  20. 20

    将整数转换为十六进制转义字符串的Pythonic方法

  21. 21

    在多个位置切割字符串的pythonic方法是什么?

  22. 22

    迭代字典以将其项转换为字符串的Pythonic方法

  23. 23

    将字符串拆分为连续、重叠的单词列表的最pythonic 方法是什么

  24. 24

    如果列表中的子字符串,python替换字符串中的子字符串// pythonic方式

  25. 25

    使用熊猫搜索包含在多列中的字符串的有效方法

  26. 26

    检查从查询返回的任何行是否包含在字符串中的最高效方法?

  27. 27

    检查字符串中的一组字母是否为变量的有效方法?

  28. 28

    存储一组字符串的最佳方法是什么

  29. 29

    什么是pythonic中的pythonic?

热门标签

归档