带长度前缀的列表拼接表达式是否有通用名称?
嵌套列表转带长度前缀扁平形式的技术名称
嘿,这个操作其实没有一个特别生僻的专属术语,但在序列化和数据编码的圈子里,它一般被叫做长度前缀(Length-Prefixed)扁平化/序列化,算是这类模式的一个具体应用场景。
如果要更精准地描述,它本质是LV(Length-Value)编码的简化版——LV编码的核心逻辑就是用一个长度字段紧跟着对应长度的数据块来组织结构,你这里的每个子列表就刚好对应一个LV单元:先放子列表的长度值,再把子列表的所有元素依次跟上,最后把所有这些单元串起来变成扁平结构。
给你用伪代码写个直观的转换例子,一看就明白:
def length_prefix_flatten(nested_list): flat = [] for sub in nested_list: flat.append(len(sub)) flat.extend(sub) return flat
这种模式在很多场景里都挺常用的,比如一些自定义的内部数据协议、轻量级序列化格式,用它来标记嵌套结构的边界特别方便——解析的时候直接读前缀的长度,就知道接下来要取多少个元素,完全不需要额外的分隔符或者结束标记,不容易出歧义。
内容的提问来源于stack exchange,提问作者Reg U
相关产品推荐
相关产品推荐

