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

在python中将字符串转换为数组的最快方法是什么?

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

在python中将字符串转换为数组的最快方法是什么?

我不确定这是最快的,但绝对是最安全/最简单的:

import astlst = ast.literal_eval(s)

常规

eval
也可以工作:

lst = eval(s)

我的机器的一些基本计时:

>>> s = '[54, 95, 45, -97, -51, 84, 0, 32, -55, 14, 50, 54, 68, -3, 57, 88, -1]' >>> def f1():...    eval(s)... >>> def f2():...    ast.literal_eval(s)... >>> timeit.timeit('f1()', 'from __main__ import f1')31.415852785110474>>> timeit.timeit('f2()', 'from __main__ import f2')46.25958704948425

因此,根据我的计算机,

eval
速度比快50%
ast.literal_eval
。但是,这
eval
绝对是不安全的,除非您完全信任它,否则切勿在任何字符串上使用它。除非这是一个真正的演示瓶颈,并且您100%相信输入,否则我会认为值得花一些额外的时间来换取能够在晚上安然入睡的条件。



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

版权所有 (c)2021-2022 MSHXW.COM

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