小编典典

Python 2.7之前的dict理解的替代方法

python

如何使以下功能与Python 2.7之前的Python版本兼容?

gwfuncs = [reboot, flush_macs, flush_cache, new_gw, revert_gw, send_log]      
gw_func_dict = {chr(2**i): func for i, func in enumerate(gwfuncs[:8])}

阅读 186

收藏
2020-12-20

共1个答案

小编典典

采用:

gw_func_dict = dict((chr(2**i), func) for i, func in enumerate(gwfuncs[:8]))

这是dict()带有生成(key, value)对的生成器表达式的函数。

或者,概括地说,是对以下形式的字典理解:

{key_expr: value_expr for targets in iterable <additional loops or if expressions>}

始终可以使用以下命令使其与Python <2.7兼容:

dict((key_expr, value_expr) for targets in iterable <additional loops or if expressions>)
2020-12-20