设置循环计数

时间:2014-09-30 00:14:43

标签: python loops count

我:

  1. 以字符串的形式获取用户输入。
  2. 使用嵌套for循环计算每个字母出现的次数。
  3. 现在,假设一切都是小写的。

    这是我正在寻求的理想输出。

    please enter a sentence: this is a test
    
    a : 1
    
    e : 1
    
    h : 1
    
    i : 2
    
    s : 3
    
    t : 3
    

    到目前为止,在Python中,我可以做到这一点:

    sentence = input("Please enter a sentence: ")
    

    我知道答案需要一个计数器和一个嵌套的for循环。

    for alpha in
    
    ['a','b','c',........,'z']:
    

2 个答案:

答案 0 :(得分:1)

您无法在收集模块中使用内置的Counter函数。

只需从collections模块导入计数器,然后执行以下操作:

cString = Counter(SomeString)
#return the cString object

#returns the object in order of occurrence.
cString.most_common

修改

然而,如果这是,就像我假设的那样,对于家庭作业而言,你需要以最基本的方式进行(并且没有给你答案),这些是你需要采取的步骤。

  1. 构建一个以字符串作为参数的函数
  2. 拥有一个包含字母表中所有字符的数组
  3. 对于alpha数组中的每个项目,将项目与输入字符串中的每个项目进行比较以获取出现次数
  4. 将字符和计数的键值对添加到字典
  5. 返回/打印字典

答案 1 :(得分:0)

sentence = input("Enter the sentence: ")
count = 0

sentence = sentence.lower()

for letters in ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']:
    for letter in sentence:
            if letters == letter:
                count += 1
    if (count != 0):
        print (letters,":",count)
        count = 0