使用嵌套循环计算Python中的单词,元音和辅音

时间:2015-03-11 15:40:10

标签: python-3.x

我的任务是用Python编写一个程序,以随机单词和短语的形式从用户那里获取输入,直到用户键入" The End。"然后,它需要给出辅音和元音的数量以及在用户结束程序之前键入的单词数。我对我需要做的事情有一个基本的了解,但是我无法理解如何在程序中使用嵌套循环(必需)以及如何跟踪元音,辅音和单词。我们刚刚学习了函数(主要等),我认为这是一个很好的开始。我理解if / elif / else语句是否非常好,并且我也确定他们也需要这些语句。

这是给我们的样本。

Hi! I count vowels and consonants! Please enter your words for counting. When you are done, enter “The end.”

Please enter a string: elephant

Please enter a string: house

Please enter a string: pacman

Please enter a string: I’m done

Please enter a string: The end

Please enter a string: 5

Thanks for entering your input!

Total number of vowels: 11

Total number of consonants: 14

任何帮助将不胜感激。我是这方面的初学者,而且我无法跟踪所有不同的技术。我只需要帮助实现这一目标。开始一直是我最难的部分。

1 个答案:

答案 0 :(得分:0)

  1. 首先将所有三个计数器设置为零
  2. 获取输入
  3. 如果是单词,请在单词counter

  4. 中加1
  5. 再次,如果是一个单词,请计算辅音并将其添加到辅音计数器

  6. 再次,如果这是一个单词,请计算元音
  7. 如果不是单词(结束条件),则退出循环并完成
  8. 返回第2步,再询问另一个字

  9. 完成:输入并计算完所有单词后,打印总计

  10. 您可以编写一个函数来计算元音和/或辅音。

    试试这个:

    import string
    
    def count_consonants(in_string):
        a = len(in_string)
        b = len(string.translate(in_string, None, vowels)) #count again after removing vowels
        return a - b
    
    vowels = "aeiou"
    word = "elephant"
    
    print string.translate(word, None, vowels)
    
    print count_consonants(word)