首页 > 解决方案 > 将文本中的字母添加到字典中而无需标点符号的功能

问题描述

我写了一个向字典添加字母的函数,但是当我在 termianl 中运行它时,它会不断向它添加标点符号。我试过放“and var != ',' and var != '-'”等,但它不起作用,我不知道为什么

i = 0

while i < len(text):
    for var in text[i]
        if var not in d:
            d[var] = 1
        else:
            d[var] += 1
    i += 1
return(d)

标签: pythonpython-3.x

解决方案


IMO 对您的任务最 Pythonic 的解决方案是:

from collections import Counter

def dict_letters(text):
    return Counter(c for c in text if c.isalpha()).items()

我假设您想计算text. 对于计数,python 中有一个非常有用的Counter类。通过使用isalpha,我们询问每个字符c是字母还是标点符号。

(因为到目前为止您的代码无法编译,这只是一个猜测。)


推荐阅读