哈工大python期末考试编程1

本文介绍了一种用于处理字符串的算法,该算法首先将输入的字符串进行标准化处理,然后根据标准化后的字符串进行分组,最后统计并输出各组中元素的数量及具体值。这一过程涉及到字符串操作、排序、字典数据结构的使用以及迭代输入等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

def get_standard_str(s):
    lis = list(s)
    lis.sort()
    s = "".join(lis)
    return s


stop_word = ""
dict1 = {}

for line in iter(input, stop_word):
    standard_str = get_standard_str(line)
    if standard_str in dict1:
        dict1[standard_str].append(line)
    else:
        dict1[standard_str] = [line]

len_list = []
dict2 = {}

for(k, v) in dict1.items():
    one_len = len(v)
    if one_len not in len_list:
        len_list.append(one_len)
    if one_len in dict2:
        dict2[one_len].append(v[0])
    else:
        dict2[one_len] = [v[0]]


len_list.sort(reverse=True)
for word_num in len_list:
    for keys in dict2[word_num]:
        new_keys = get_standard_str(keys)
        print(' '.join(dict1[new_keys]))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值