Python 当字符串包含另一个字符串时提供特定输出的最有效方法

Python 当字符串包含另一个字符串时提供特定输出的最有效方法,python,Python,我正在用Python编写一个脚本,它检查一个字符串是否包含一套卡片组,因为没有开关/大小写,而且我也不知道如何使用字典,我有点困惑 现在,我一行只有4条“如果”语句: def颜色检查(inp): 如果inp中有“心脏”: 返回“红色” 如果inp中为“菱形”: 返回“红色” 如果inp中有“俱乐部”: 返回“黑色” 如果inp中有“黑桃”: 返回“黑色” 返回“错误” 它给出了正确的结果,但我觉得这可以稍微改进一下。试试下面的代码: colors = { 'Heart': 'Red',

我正在用Python编写一个脚本,它检查一个字符串是否包含一套卡片组,因为没有开关/大小写,而且我也不知道如何使用字典,我有点困惑

现在,我一行只有4条“如果”语句:

def颜色检查(inp):
如果inp中有“心脏”:
返回“红色”
如果inp中为“菱形”:
返回“红色”
如果inp中有“俱乐部”:
返回“黑色”
如果inp中有“黑桃”:
返回“黑色”
返回“错误”
它给出了正确的结果,但我觉得这可以稍微改进一下。

试试下面的代码:

colors = {
    'Heart': 'Red',
    'Diamond': 'Red',
    'Club': 'Black',
    'Spade': 'Black',
}


def colorcheck(inp):
    for card, color in colors.items():
        if card in inp:
            return color
    return "Error"


print(colorcheck("Ace of Spades"))
输出

Black