我正在尝试根据另一个索引列表迭代列表中的元素子集。最短/最pythonic的方式似乎会使用列表理解来达到以下效果: for elt in [lst[idx] for idx in idxs]: elt.do_stuff() elt.do_more_stuff()但是我不能动摇这样的感觉,如果我要循环很多次,每次重建列表理解可能会很昂贵,我应该多花一行来写: for idx in indxs: elt = lst[idx] elt.do_stuff() elt.do_more_stuff()对python及其相对效率/低效率有更多了解的人能否了解这些方法之间的实际计算成本差异?我知道,我知道这两种方式都可以正常工作,但是一旦我开始想知道其中的区别,它就让我感到好奇。
添加回答
举报
0/150
提交
取消