栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 面试经验 > 面试问答

使用Python替换列表中的值

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Python替换列表中的值

使用列表理解来构建新列表:

new_items = [x if x % 2 else None for x in items]

您可以根据需要修改原始列表,但实际上并不能节省时间:

items = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]for index, item in enumerate(items):    if not (item % 2):        items[index] = None

以下是(Python 3.6.3)演示非节省时间的时间:

In [1]: %%timeit   ...: items = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]   ...: for index, item in enumerate(items):   ...:     if not (item % 2):   ...:         items[index] = None   ...:1.06 µs ± 33.7 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)In [2]: %%timeit   ...: items = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]   ...: new_items = [x if x % 2 else None for x in items]   ...:891 ns ± 13.6 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

和Python 2.7.6计时:

In [1]: %%timeit   ...: items = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]   ...: for index, item in enumerate(items):   ...:     if not (item % 2):   ...:         items[index] = None   ...: 1000000 loops, best of 3: 1.27 µs per loopIn [2]: %%timeit   ...: items = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]   ...: new_items = [x if x % 2 else None for x in items]   ...: 1000000 loops, best of 3: 1.14 µs per loop


转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/640289.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号