python - 使用字符串、列表和字典进行操作

标签 python string list dictionary

我有一个列表和一本字典。

l = ['one', 'two', 'three', 'four']
d = {'aw.one' : '#aw.one', 'aw.two' : '#aw.two'}

现在,我有一个字符串:

s = "this is one sentence"

我想检查列表 l 中的任何项目是否存在于字符串中。如果是,那么我想从其键包含列表中该项目的字典中获取值。

例如,在给定的示例中
- 字符串中的“one”出现在列表 l 中 - 然后我需要打印#aw.one。

如果我的字符串是:

s = "this is two balls"

它应该打印

#aw.two.

我怎样才能做到这一点?

最佳答案

直接的方法是迭代列表并检查该单词是否在 s 中,然后迭代字典键以检查其中是否有该单词,如下所示

for item in l:
    if item in s:
        for key in d:
            if item in key:
                print d[key]

我们甚至可以这样写,而不是在多行中编写相同的内容

print ", ".join(", ".join(d[k] for k in d if i in k) for i in l if i in s)

关于python - 使用字符串、列表和字典进行操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26333325/

相关文章:

python - 在 Centos 上安装 mysql-python

python - DataFrame.stack() 后的新索引级别名称

Google Chrome 用于字符串搜索的算法?

php - 从 PHP 上的字符串的左侧和右侧删除空格

python - 在 Python 中垂直合并列表列表的两列

c# - 链接的 View 列表/列表删除选定的项目

python - 如何将一个迭代器一分为二?

python - 按用户定义的月份跨度对 pandas dataFrame 进行分组

java - 通过使用循环访问每个索引将字符串数组转换为整数数组

c# - Array、ArrayList 和 List 之间有什么区别?