我如何计算和显示使用输入文本以“披萨”(仅披萨)结尾的出现词数

时间:2016-05-16 19:56:30

标签: python

所以我希望能够打印出一些事件: 例如,如果我在我的文本文件中有以下内容:

  

cheeesepizza

     

chickenpizza

     

pepornisub

     

pizzaaregood

我希望能够打印“有2个披萨”。 ......这是我到目前为止所拥有的

f = open(file_name)
total = 0
for line in f:
    if "pizza" in line:
        total += 1
f.close()
print total

1 个答案:

答案 0 :(得分:1)

你需要检查"披萨"在最后一行。 in运算符检查某些内容是出现在列表或字符串中的任何位置,而不仅仅是最后。

我们可以使用endswith上的str绑定方法检查字符串是否以某些内容结尾。将您的if声明更改为:

if line.endswith("pizza"):

完整代码:

f = open(file_name)
total = 0
for line in f:
    if line.endswith("pizza"):
        total += 1
f.close()
print total

如果您想要更多Pythonic方式来实现您想要实现的目标,请使用列表理解并计算项目,如下所示:

f = open(file_name)
total = len([line for line in f if line.endswith("pizza")])
f.close()
print total