在Python中将两个数字转换为一个数字的最有效方法是什么?

在Python中将两个数字转换为一个数字的最有效方法是什么?

数字始终在0到255之间,我已经通过Concat测试了几种方法来测试字符串并将其转换回int的几种方法,但是它们对于我的代码来说非常耗时。

    a = 152 
    c = 255
    d = concat(a,c)

回答:

    d = 152255
达米安弗朗索瓦

这非常快:

def concat(a, b):
    return 10**int(log(b, 10)+1)*a+b

它使用对数来查找第一个数字必须乘以10的次数,才能将总和用作串联

In [1]: from math import log

In [2]: a = 152

In [3]: b = 255


In [4]: def concat(a, b):
   ...:     return 10**int(log(b, 10)+1)*a+b
   ...:

In [5]: concat(a, b)
Out[5]: 152255

In [6]: %timeit concat(a, b)
1000000 loops, best of 3: 1.18 us per loop

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

有没有更好的方法来检查一个数字是否是两个数字的范围

查找3个数字中最小的Java的最有效方法?

从两个数组/切片中获取交集和排除项的最有效方法是什么?

最有效的方法来获取Python中整数的第一个数字?

最有效的方法找到3个数字的最大公因数?

查找一个数组中的哪些元素与另一个数组中的任何元素最接近的最有效方法是什么?

查看数字是否包含在未排序的两个数字间隔中的最有效方法?

给定一个对象,该对象的值是一个数组,返回对[key,array.length]对的最有效方法是什么?

在2个数字之间进行变换的最有效方法

在另一个数组内的数组中搜索对象的最佳/最有效方法是什么?

在App Script中将.XLS转换为Google表格的最有效方法是什么?

Python:比较一个函数返回的两个数字(以元组为单位)的简单方法是什么?

这是将一个数组拆分为两个以上的最有效方法吗?

在范围范围内测试序列中每个数字的最有效方法是什么?

获取数字总和的最有效方法是什么?

给定两个数组,对它们进行二进制重叠的最有效方法是什么?

在Python中逐位比较2个数字(16位)的最有效方法是什么?

查找两个数之和的最有效方法

如果两个数字实际上是数字,最有效(但也清晰)的方法是?

检查列表中的数字是否可被另一个数字整除的最有效方法

在R中将两个数组转换为一个数据帧

快速添加成千上万个数字的有效方法是什么?

在sqlite3中有一个或两个数字的限制python

求两个数的平方和的平方根的最有效方法是什么?

为什么两个数字上的 UNION 比它们的总和更有效?

python:总结一个列表的两个数字

在 JavaScript 中将 8 位数字数组转换为长布尔数组并返回的最有效方法是什么?

在两个数组之间迭代以查找匹配值的最有效方法是什么?

在另一个数组中找到一个 numpy 数组的行列的最有效方法是什么?