2024-04-19 19:02:07 发布
网友
我想比较两个字符串变量并返回两个字符串之间共享的字符数。因此"work"和"what"将返回“1/4”,因为两个字符串之间的4个字母中有1个(在本例中只有w)是相同的。你知道吗
"work"
"what"
w
这将给出两个单词中出现在同一位置的字母数:
sum(1 for a, b in zip(word1, word2) if a == b)
zip同时为两个单词中的每个字符提供一个迭代器,您只需对每次匹配的1求和。你知道吗
zip
1
这将为您提供两个单词在任何位置的通用字母:
len(set(word1) & set(word2))
这将创建两组字母,取两组字母的交集,并告诉您交集有多大。你知道吗
您可能需要考虑使用difflib,因为它似乎涵盖了您的用例,但也扩展到了不同长度的字符串。你知道吗
difflib
import difflib sequence_matcher = difflib.SequenceMatcher(a='work', b='what') sequence_matcher.ratio() # 0.25
import difflib sequence_matcher = difflib.SequenceMatcher(a='work', b='works') sequence_matcher.ratio() # 0.889
你要这样的东西吗?你知道吗
a = "hello" print(list(a)) b = "hell" counter=0 for x in list(a): if x in list(b): counter+=1 print(str(counter)+"/"+str(len(list(b))))
这是获取存储在变量a中的字符串,循环遍历字符并与存储在变量b中的字符串进行比较。最后,它打印a中的字符数,这些字符在存储在b中的字符串长度上也在b中
这将给出两个单词中出现在同一位置的字母数:
zip
同时为两个单词中的每个字符提供一个迭代器,您只需对每次匹配的1
求和。你知道吗这将为您提供两个单词在任何位置的通用字母:
这将创建两组字母,取两组字母的交集,并告诉您交集有多大。你知道吗
您可能需要考虑使用
difflib
,因为它似乎涵盖了您的用例,但也扩展到了不同长度的字符串。你知道吗例1
例2
你要这样的东西吗?你知道吗
这是获取存储在变量a中的字符串,循环遍历字符并与存储在变量b中的字符串进行比较。最后,它打印a中的字符数,这些字符在存储在b中的字符串长度上也在b中
相关问题 更多 >
编程相关推荐