给定一个字符串str,要求:
(1)请将字符串的数字取出,并输出成一个新的字符串。
(2)请统计字符串出现的每个字母的出现次数(忽略大小写,a 与 A 是同一个字母),并输出成一个字典。
(3)请去除字符串多次出现的字母,仅留最先出现的一个,大小写不敏感。例如:
‘aAsmr3idd4bgs7Dlsf9eAF’,经过去除后,输出 ‘asmr3id4bg7lf9e’
(4)按字符串中字符出现频率从高到低输出到列表,如果次数相同则按字母顺序排列。
#(1)请将字符串的数字取出,并输出成一个新的字符串。
#定义字符串
str="aAsmr3idd4bgs7Dlsf9eAF"
#定义数字
num=" "
#使用for循环依次取出字符串的数字
for item in str :
#使用isnumeric()方法判断该字符是否为数字
if item.isnumeric():
num += item
print(f"将字符串str中的数字取出,输出为一个新字符串num为:\n{num}")
#(2)请统计字符串出现的每个字母的出现次数(忽略大小写,a 与 A 是同一个字母),并输出成一个字典。
#定义字符串
str="aAsmr3idd4bgs7Dlsf9eAF"
#将字符串中的大写字母转换为小写字母
str=str.lower()
#定义一个空字典
dict={ }
#统计每个字母出现的次数
for item in str:
#使用isalpha()函数判断字符串是否为字母
if item.isalpha():
if item in dict:
dict[item] += 1
else:
dict[item] = 1
print(f"忽略大小写,每个字母出现的次数组成的字典为:\n{dict}")
#(3)请去除字符串多次出现的字母,仅留最先出现的一个,大小写不敏感。
#定义字符串
str="aAsmr3idd4bgs7Dlsf9eAF"
#大小写字母不敏感
str=str.lower()
#定义一个空字符串
str1=" "
for item in str:
# 使用isalpha()函数判断字符串是否为字母
if item.isalpha():
#判断item是否在空字符串str1内
if item not in str1:
str1 += item
#数字
else:
str1 += item
print(f"去除字符串多次出现的字母,仅留最先出现的一个后,组成的新字符串str1为:\n{str1}")
#(4)按字符串中字符出现频率从高到低输出到列表,如果次数相同则按字母顺序排列。
#定义字符串
str="aAsmr3idd4bgs7Dlsf9eAF"
#将字符串中的大写字母转换为小写字母
str=str.lower()
#定义一个空字典
dict={ }
for item in str :
# 使用isalpha()函数判断字符串是否为字母
if item.isalpha():
#字符出现的频率
if item in dict:
dict[item] += 1
else:
dict[item] = 1
#按照值从大到小排序,如果值相同则按照键从小到大排序
sorted_dict = sorted(dict.items(), key=lambda x: (-x[1], x[0]))
# 将排序后的键按照出现次数输出到列表中
list=[x[0] for x in sorted_dict]
print(f"按字符串中字符出现频率从高到低输出到列表,如果次数相同则按字母顺序排列后的结果为:\n{list}")
运行结果:


被折叠的 条评论
为什么被折叠?



