[英]count the occurrences of alphabet of string in python
包含大小写字母的字符串。
我们需要计算每个字母的出现次数(不区分大小写)并显示相同的字母。
下面是程序,但没有导致期望的输出
输出应为-2A 3B 2C 1G
我的输出是-A 2 B 3 A 2 B 3 C 2 B 3 G 1 C 2
String="ABaBCbGc"
String1=String.upper()
for i in String1:
print(i,String1.count(i))
使用柜台 :
from collections import Counter
String = "ABaBCbGc"
counts = Counter(String.lower())
print(counts)
输出量
Counter({'b': 3, 'c': 2, 'a': 2, 'g': 1})
如果您希望使用大写字母,只需将str.lower
更改为str.upper
。 或使用字典来跟踪计数:
string = "ABaBCbGc"
counts = {}
for c in string.upper():
counts[c] = counts.get(c, 0) + 1
print(counts)
输出量
{'C': 2, 'B': 3, 'A': 2, 'G': 1}
打印将用空格分隔参数。 用+
连接它们。 count()
是一个int,因此需要将其转换为字符串。
String="ABaBCbGc"
counts = {}
String1=String.upper()
for i in String1:
counts[i] = String1.count(i)
for k in counts.keys():
print(str(counts[k]) + k)
2A
3B
2C
1G
创建排序的输入字符串作为值,并创建此字符串的排序键作为键。 迭代键并在值中计数它们的出现。
data = "ABaBCbGc".upper()
values = ''.join(sorted(data))
keys = sorted(''.join(set(data)))
for key in keys:
print(str(values.count(key))+key)
输出:
2A
3B
2C
1G
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.