将数字写入数组

发布于 2021-01-29 14:55:13

我想用一个很长的数字分开的数字来计算。如何在Python2.7中做到这一点?我考虑过以某种方式将数字写入数组,以便可以使用array(x)访问数字:

number = 123456789123456789
array = [1,2,3,4,5,6,7,8,9,1,2,3,4,5,6,7,8,9]

问题在于,该数字有很多位数,因此手动进行将花费很长时间。那么我如何自动执行此操作?

关注者
0
被浏览
120
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您可以使用mapint而且str功能喜欢这个

    print map(int, str(number))
    

    str函数将转换number为字符串。

    map函数将函数应用于int字符串化数字的每个元素,以将字符串转换为整数。

    输出量

    [1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    

    如果您在一个循环中一次又一次地这样做,像,然后列表的理解会比更快map的方法

    number = 123456789123456789
    from timeit import timeit
    print timeit("map(int, str(number))", "from __main__ import number")
    print timeit("[int(dig) for dig in str(number)]", "from __main__ import number")
    

    在我的机器上输出

    12.8388962786
    10.7739010307
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看