【问题标题】:Iterate through List Python遍历列表 Python
【发布时间】:2015-10-07 13:36:30
【问题描述】:

我正在尝试查看我拥有的字符串是否与 python 字典中的任何字符串相似。当我在寻找完全匹配时,我可以这样做:

stringList = []
if (myString in stringList):
    #do something

使用 Python Levenshtein 寻找类似的匹配项是我能想到的最好的方法(我确信会有一些错误)。

stringList = []
for i in range(len(stringList)):
    if distance(myString, stringList[i]) < 2:
        #do something
    else:
        #do something else

有没有更好的方法?谢谢。

【问题讨论】:

  • 当您在示例中仅使用列表提供示例输入和预期输出时,这如何归入字典
  • 不客气,但能否提供样品

标签: python


【解决方案1】:

它更像是 Pythonic:

stringList = []
for item in stringList:
    if distance(myString, item) < 2:
        #do something
    else:
        #do something else

最好的尊重

【讨论】:

    【解决方案2】:

    如果你不在乎哪个字符串足够接近,你可以使用min函数:

    if min(distance(x, myString) for x in stringList) < 2:
        # do something
    

    【讨论】:

      【解决方案3】:

      来自https://stackoverflow.com/a/10018734/4941367

      使用difflib 模块。

      difflib.get_close_matches(myString, myList)
      

      【讨论】:

        猜你喜欢
        • 2013-02-18
        • 1970-01-01
        • 2018-03-08
        • 2013-07-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多