字母计数词典

Iva*_*van 4 python dictionary

我的作业问题是编写一个名为 LetterCount() 的 Python 函数,该函数接受一个字符串作为参数并返回一个字母计数字典。但是,我的代码包含空格和逗号作为我不想要的字典的一部分。你能帮我一下吗?如何从列表中删除空白区域?这是我的代码?

import string
def LetterCount(str):
    str= str.lower().strip()
    str = str.strip(string.punctuation)
    list1=list(str)
    lcDict= {}
    for l in list1:
        if l in lcDict:
            lcDict[l] +=1
        else:
            lcDict[l]= 1
    print lcDict

LetterCount("Abracadabra, Monsignor")
Run Code Online (Sandbox Code Playgroud)

Dry*_*_09 6

对于字母计数,最好的方法是使用字典。

s = "string is an immutable object"
def letter_count(s):
    d = {}
    for i in s:
        d[i] = d.get(i,0)+1
    return d
Run Code Online (Sandbox Code Playgroud)

输出:

{'a': 2, ' ': 4, 'c': 1, 'b': 2, 'e': 2, 'g': 1, 'i': 3, 'j': 1, 'm': 2, 'l': 1, 'o': 1, 'n': 2, 's': 2, 'r': 1, 'u': 1, 't': 3}
Run Code Online (Sandbox Code Playgroud)