python - 将文本中的字母添加到字典中而无需标点符号的功能
问题描述
我写了一个向字典添加字母的函数,但是当我在 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)
解决方案
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
是字母还是标点符号。
(因为到目前为止您的代码无法编译,这只是一个猜测。)
推荐阅读
- ios - 401 retry mechanism using Combine Publishers
- excel - Excel data format problem datetime with apostrophe?
- c++ - How to link SDL2 manually in CMake
- python - how to merge a single branch to master branch using gitpython
- google-analytics - 报告中的域和子域完整页面 URL
- bash - bash 根据环境变量运行命令
- php - Flutter/PHP:获取运行应用程序的手机的 IP 地址
- javascript - 关于在sql中插入的问题
- c - AOSP 和 U-Boot - sscanf() 不写入变量
- javascript - 为什么 JavaScript 中的这个简单调用不起作用?