如何使用python在两个字符串中查找相同的字符

时间:2014-11-25 05:34:41

标签: python string compare

我需要在两个字符串中找到相同的字符 一个来自打开文件,我使用它和一个来自用户输入
示例:

x = raw_input('input x')

y = open('file.txt' , 'r') y = y.read()

假设我们得到x = abcde和y =比较
我需要找到x == y
的情况 在示例中,首先我需要在y中找到'a',然后在'b'中找到等等 我不需要找到相同的所有字符串,只是从第一个到最后一个顺序 从我的例子中我们可以猜测,在'a'之后,y中没有'b',
所以没关系,我不需要像'e'那样找到'e'。

2 个答案:

答案 0 :(得分:1)

这个问题不是100%明确,但这可能会帮助您走上正轨。

x = raw_input('input x')
with open('file.txt', 'r') as thefile:
    for char in x:
        if char in thefile:
            print 'found character', char, 'in the file.'

答案 1 :(得分:1)

我不完全确定你要做什么,但这里有一段代码可以在两个字符串中找到常用字符并将它们存储在字典中。字典中的键是找到的常见字符,值是一个元组,其中包含找到此字符的每个字符串中的位置。

x = input('Enter value of x')
f = open('file.txt', 'r')
y = f.read()
f.close()
found = dict()

for i in enumerate(x):
    for j in enumerate(y):
        if i[1] == j[1]:
            # Store the result as:
            # found[character] = (location  in x, location in y)
            found[j[1]] = (i[0], j[0])

print found

对于您的示例,结果将是{' a' :(0,4),' c' :(2,0),' e' :(4,6)}