我这里有两张单子
cons=['qwe','wer','ert','rty','tyu','yui','uio','iop','asd','sdf','dfg',
'fgh','ghj','hjk','jkl','zxc','xcv','cvb','vbn','bnm']
print([i for e in alphabet for i in cons if e in i])
字母表是用户输入
例如,如果用户要键入qwe,那么shell将打印'qwe','wer','ert','rty'
(至少有一个字母相似的所有项目),但我只希望它打印cons中的项目,如果输入的所有项目中有一个与之相似。例如,打印“qwe”
我该怎么做?你知道吗
编辑:为了让这更清楚,如果我要输入'qwer',我希望输出是'qwe'和'wer'
如果您不关心列表中输出字符串的顺序,那么您当然可以:
更新(基于OP注释)如果您需要
cons
中的字符串与alphabet
的子字符串完全匹配,那么此代码只需检查cons
中的字符串是否是alphabet
(完全匹配)的子字符串,如果是,则包括它:例如:
alphabet
='qwer'
,输出=['qwe', 'wer']
但是,基于OP,这个测试检查
cons
字符串中的所有字母是否都存在于alphabet
中(不一定以确切的顺序和频率)。它使用all()
方法,如果传递的所有参数都是True
,则返回True
。你知道吗解释:
let in alphabet
根据每个字母let
是否在用户输入字符串alphabet
中返回True或False。对cons
、for let in sub
子字符串中的每个字母执行此操作。因此,如果sub
字符串中的所有字母都在字母表中,则将检查来自用户输入的每个字母,并仅计算为True
。如果此检查的结果为True,则子字符串将包含在结果中并打印。如果来自con
的子字符串与用户输入alphabet
的子字符串长度不同,则此函数有效。你知道吗如果alphabet=
'er'
,output=[]
(没有字符串具有alphabet
中的所有字母)如果字母表=
'qwer'
,输出=['qwe', 'wer']
你找到了吗?地址:
或者如果需要找到不完全的巧合
相关问题 更多 >
编程相关推荐