我正在用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'” 我真的不确定这是怎么回事,有人可以帮忙吗?
答案 0 :(得分:2)
用字符串而不是列表检查endswith
。 e.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)