查找文本文件中的项目,但仅显示以输入字母开头的项目

时间:2013-09-26 23:17:57

标签: python-3.x

我为我糟糕的英语道歉。我还在学习。 我想在文本文件,列表中找到一个项目,但只想显示以项目字母开头的项目。

例如,我有字符串“amistad”,文本文件包含:

ballena 
avispa 
avestruz 
miesta
moe
abeja 
bullterrier

并且只想显示那些以“a”开头的单词:

avispa 
abeja 
avestruz 

然后,以“m”开头的那些

miesta 
moe

直到“amistad”结束

我一直在尝试列表,到目前为止我得到了这个:

lista = ['avispa', 'abeja', 'avestruz', 'ballena', 'bisonte', 'bullterrier']
for item in lista:
    if item.find("a") != -1:
        print(item)

但是这会打印出包含“a”的所有单词。我只想要那些以它开头的人。 而不是在列表中,而是在文件文本中。 对不起我的英语不好。 希望可以帮助我。感谢

2 个答案:

答案 0 :(得分:0)

尝试startswith方法:

lista = ['avispa', 'abeja', 'avestruz', 'ballena', 'bisonte', 'bullterrier']
for item in lista:
    if item.startswith("a"):
        print(item)

我想我现在明白了。你想迭代'amistad'并检查依次以每个字母开头的所有单词?也许是这样的:

lista = ['avispa', 'abeja', 'avestruz', 'ballena', 'bisonte', 'bullterrier']
for letter in "amistad"
    for item in lista:
        if item.startswith(letter):
            print(item)

答案 1 :(得分:0)

lista = ['avispa', 'abeja', 'avestruz', 'ballena', 'bisonte', 'bullterrier','miesta','moe']
for item in lista: 
    for letter in list("amistad"):
        if item[0] == letter:
            print(item)

如果您想从文件中获取输入,请查找如何使用f = open('file.txt',r),读取行并将每行添加到列表中。