第一步:运用集合将其中重复的字母去掉,放入str1中。再将其转换成列表,但因为集合是无序的,因此将其转换成的列表字母排序是非常混乱的,为了好看可以用排序函数str.sort()或者sorted(list_name)。由于字符串中字母有的大写有的小写,因此还需要运用str.lower()将字符串中大写换成小写,或者运用str.upper()将所有小写换成大写。题目为小写输出格式转换成小写就行。
第二步:运用双重for循环,第一层for循环中的i从str1中取,第二层的for循环中的j从原始字符串中取。从而统计每个字母的出现次数。
第一步:利用内置函数str.join(),将列表中每个元素连接起来。
第二步:再运用方法1就可以了。
语法:
list.sort(key=None,reverse=false)
key---指定可迭代对象中的一个元素进行排序。
reverse---排序规则,reverse=Tuse 降序,reverse=False 升序(默认)
str1='asjhsdjkgavsdjasdbj'
str2=set(str1)
str2=list(str2)
str2=sorted(str2)
str1=str1.lower()
t1=[]
t2=[]
s=0
for i in str2:
t=0
s=s+1
for j in str1:
if i in j:
t=t+1
print(i,t,sep=':',end=',')
str1=['a','s','j','h','s','d','j','k','g','a','v','s','d','j','a','s','d','b','j']
set1=''
str2=set1.join(str1)
str3=set(str2)
str3=list(str3)
str3.sort()#或者str3=sorted(str3)都可以将其排序,但两者有所不同底下有所说明
str2=str2.lower()
t1=[]
t2=[]
s=0
for i in str3:
t=0
s=s+1
for j in str2:
if i in j:
t=t+1
print(i,t,sep=':',end=',')