检查多个相等性最好的方法是什么?

2 投票
2 回答
660 浏览
提问于 2025-04-16 11:17

最好用Python来写,

我想知道怎么写一个函数,能够检查多个相等的情况。这个函数需要在输入是“f”、“fall”、“F”、“Fall”、“fa”等等时返回1,并且还要检查“fall”这个词是否在一个字典里。

2 个回答

0

你可以用一种更符合Python风格的方法,结合使用filter和'长度大于1'来实现……

input = "fall"
the_list = ["f", "fall", "F", "Fall", "fa"]
your_test = len(filter(lambda x: x == input, the_list)) > 1 \
       and "fall" in your_dictionary
2

简单来说,你似乎有一个单词的字典(可能是一些命令),你想要找到第一个与部分输入匹配的词,而且这个匹配不区分大小写:

D = dict(fall=None,stand=None)
trials = 'f fall F Fall fa foo Foo s ST stan'.split()

def check(t):
    for k in D:
        if k.startswith(t.lower()):
            return k
    return None

for t in trials:
    print '{0:7}{1}'.format(t,check(t))

输出

f      fall
fall   fall
F      fall
Fall   fall
fa     fall
foo    None
Foo    None
s      stand
ST     stand
stan   stand

撰写回答