从两个列表创建自定义词典

阿维纳什·克林顿(Avinash Clinton):

我有以下两个python列表。

prob_tokens = ['119', '120', '123', '1234', '12345']

complete_tokens = ['112', '120', '121', '123', '1233', '1234', '1235', '12345']

min_len_sec_list = 3
max_len_sec_list = 5

我想创建一个字典,将第一个列表中的元素作为键并具有以下约束:

  1. 如果键在第二个列表中不存在,则值为False
  2. 如果键在第二个带有变体的列表中,则值为False

例如:

(ⅰ),而检查123,如果123412345存在(123*)在第二列表然后值123将是False

(ii)。同样,在检查时1234,如果12345存在(1234*),则值将为False

*[0-9]{(max_len-len_token)}

  1. 如果key存在于第二个列表中且没有任何变体,则值将为True

输出:

final_token_dict

{'119': False,'120': True, '123': False, '1234': False, '12345': True}

我可以获取有关如何实现此目标的任何建议吗?提前致谢!!!

jpp:

您可以将自定义函数与字典理解一起使用:

prob_tokens = ['119', '120', '123', '1234', '12345']
complete_tokens = ['112', '120', '121', '123', '1233', '1234', '1235', '12345']

def mapper(val, ref_list):
    if any(x.startswith(val) and (len(x) > len(val)) for x in ref_list):
        return False
    if val in ref_list:
        return True
    return False

res = {i: mapper(i, complete_tokens) for i in prob_tokens}

print(res)

{'119': False, '120': True, '123': False, '1234': False, '12345': True}

如果字符数标准对您很重要,则可以使用链式比较和其他输入来相应地调整逻辑:

def mapper(val, ref_list, max_len):
    if any(x.startswith(val) and (0 < (len(x) - len(val)) <= max_len) for x in ref_list):
        return False
    if val in ref_list:
        return True
    return False

min_len_sec_list = 3
max_len_sec_list = 5

add_lens = max_len_sec_list - min_len_sec_list

res = {i: mapper(i, complete_tokens, add_lens) for i in prob_tokens}

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将Java Deflater / Inflater与自定义词典一起使用会导致IllegalArgumentException

SQL-创建两个日期之间的自定义日期列表

CA1701 /自定义词典

比较两个自定义列表python

加载Yaml时如何使用自定义词典类?

保存和加载自定义词典-NSUserDefaults

Json.net自定义词典格式

WPF拼写检查未在选项卡中加载自定义词典

从两个列表创建自定义组合

如何从字符串列表更快地构建自定义词典

自定义词典,以保持**上的__getitem__(星级-星级-拆箱)

Quanteda中的自定义词典

从字符向量创建自定义词典

从两个列表创建自定义字符串

python两个列表映射自定义

如何在Racket中的自定义词典上创建词典映射?

如何将2级数组组织为自定义词典格式?

Google Cloud DLP常规自定义词典错误“词典没有“ cloudStoragePath”字段”

如何创建自定义词典输出。目前拿起第一个字母并给出输出

在Word文档中包括自定义词典或术语

Django:将列表翻译为自定义词典时保持顺序

自定义词典TryGetValue找不到键

lucene 5.0.0的SmartChineseAnalyzer可以指定或添加我的自定义词典吗?

将列表列表转换为自定义词典

Python中的自定义词典和JSON模块

无法将我的自定义词典数据写入plist文件

如何在python中创建自定义词典?

使用 Python 中的自定义方法填充矩阵主体时,从两个列表中创建矩阵

TextRazor 自定义词典 - AttributeError