You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

遍历数字列表提取特定模式并转换为对应字母序列的实现问询

实现代码(Python版本)
def convert_num_list(num_list):
    res = []
    # 按长度为4的滑动窗口遍历原列表
    for i in range(len(num_list) - 3):
        window = num_list[i:i+4]
        mapping = {}
        window_str = []
        for num in window:
            if num not in mapping:
                # 按首次出现顺序映射为对应字母,首个新元素对应A
                mapping[num] = chr(ord('A') + len(mapping))
            window_str.append(mapping[num])
        res.append(''.join(window_str))
    return res

# 示例测试
a = [2, 9, 3, 2, 3, 5, 7, 9]
b = convert_num_list(a)
print(b)
# 输出结果:['ABCA', 'ABCB', 'ABAC', 'ABCD', 'ABCD']
逻辑说明
  • 滑动窗口步长固定为1,遍历次数等于原列表长度-3,输出列表长度完全符合要求
  • 每个窗口独立维护映射字典,不同窗口的映射规则互不干扰
  • 字母映射无需额外计数变量,直接通过字典当前长度计算:插入第一个新元素时字典长度为0,对应A,插入第二个新元素时字典长度为1,对应B,以此类推

内容的提问来源于stack exchange,提问作者userpisquared

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 09:27:03