如何在Python的字符串列表中使用“ .endswith”?

时间:2018-09-15 18:05:58

标签: python text character

我正在用Python来完成此任务,这与修改给定文本文件中的文本有关(读取模式,而不是写入)。这是我的一部分代码:

file = open("fileName")
suffix_list:[]

for e in file:
    elements=e.split()
    result=elements.endswith("a")
    suffix_list.append(result)

然后我要打印带有后缀的列表长度:

print(len(suffix_list))

相反,我收到此错误:“'list'对象没有属性'endswith'” 我真的不确定这是怎么回事,有人可以帮忙吗?

2 个答案:

答案 0 :(得分:2)

用字符串而不是列表检查endswithe.split()给出一个列表。遍历此列表,并检查列表中的每个项目endswith

suffix_list = []

for e in file:
    for element in e.split():
        if element.endswith("a"):
            suffix_list.append(element)

print(len(suffix_list))

还有一个列表理解版本:

suffix_list = [] 
for e in file:
    suffix_list.extend([element for element in e.split() if element.endswith('a')])

假定您需要一个 flat 列表,而不是列表列表。

答案 1 :(得分:0)

for e in file:
    elements=e.split()
    result=[ele for ele in elements if ele.endswith("a")]
    suffix_list.append(result)