我问的原因是in合并了各种数据结构,dict,list,string。
bffer = ""
dict_size = 128
for character in string:
appnd_bffer = bffer + character
if appnd_bffer in codebook:
bffer = appnd_bffer
else:
output_list.append(codebook[bffer])
codebook[appnd_bffer] = dict_size
dict_size += 1
bffer = character
我是列表理解的新手,所以如果可能的话我真的可以使用解释。干杯。
请您参考如下方法:
循环目前依赖于能够分配给bffer。因为赋值是一个语句,而列表推导式只能包含表达式,将其转换为列表推导式将需要很多难以理解的可变对象技巧。
因此,将其转换为列表理解会导致不可读的困惑,没有任何明显的好处(删除 list.append() 调用的任何速度优势将被可变对象抵消操纵)。
