def calculate_character_num(s):
'''This function calculate each character(from A-z) number from str.'''
# 去除字符串中的空格
s =list( ''.join(s.split()))
# 去重
s1 = set(s)
# 转换成列
l = list(s1)
t ={}
for a in range(len(l)):
num = 0
# reversed()方法的作用是把列表前后置换,这样保证pop()之后,不超出索引。
# pop()后会改变原字符串,但是for循环的次数是没有改变的。
for i in reversed(range(len(s))):
if l[a] == s[i]:
num = num + 1
s.pop(i)
t[l[a]] = str(num)
return t
if __name__ == '__main__':
str1 = 'hello world'
t = calculate_character_num(str1)
print(t)