python - 如何按类型计算列表中的元素?
问题描述
我想知道如何计算具有各种类型元素(数字/字符/符号)的列表中的元素?
myList = ['8', 'K' , '&' ,'2', '$' , '3' , 'T','R']
如果我想计算数字,结果将是 3。
l=["wael", "dd", ";D"]
l.clear()
print("Input the list size")
n=(int(input()))
for i in range(1,n+1):
print("fill spot",i,"of the list with")
l.append(input())
d=0
for i in range(1,n+1):
if 0 or 1 or 2 or 3 or 4 or 5 or 6 or 7 or 8 or 9 in l:
d=d+1
print("number=",d)
解决方案
您可以使用:
import string
from collections import defaultdict
letters = string.ascii_letters
digits = string.digits
L = ['8', 'K' , '&' ,'2', '$' , '3' , 'T','R']
results = defaultdict(int)
for x in L:
if x in letters:
results["letters"] += 1
elif x in digits:
results["digits"] += 1
else:
results["special"] += 1
print(dict(results))
# {'digits': 3, 'letters': 3, 'special': 2}
推荐阅读
- php - Retorno Json PHP para Ajax em branco
- c - MIPS 中的双重条件 if 语句
- python - 如何使用 Selenium 抓取多个 URL 的内容?Python
- javascript - 这是节点代理对象(v12.6.0)中的错误吗?
- c++ - 为什么 sizeof 为空类 1?
- python - 对帖子的评论分页
- laravel - 未经警卫验证(会话)
- java - 如何在不知道其路径的情况下访问项目中的现有目录 Java
- c# - 将 C++ 程序转换为 CSharp 程序时出现问题。在 CSharp 中出现异常时 C++ 运行
- vectorization - FOR循环的向量化