gpt4 book ai didi

Python 快速从 int 到 string 的转换

转载 作者:太空宇宙 更新时间:2023-11-03 13:30:20 25 4
gpt4 key购买 nike

我正在用 Python 求解大量阶乘,我发现当我计算完阶乘后,需要花费相同的时间转换为字符串以保存到文件中。我试图找到一种将 int 转换为字符串的快速方法。我将举一个计算和 int 转换时间的例子。我正在使用通用的 a = str(a) 但觉得有更好的方法,比如使用缓冲区或库。

例如:

求解 100,000 个阶乘 = 456,574 个数字

计算时间:6.36 秒

转换时间:5.20 秒

如果您有任何问题/解决方案,请告诉我!任何事情都会有所帮助。

import time

factorial = 1

print(" ")

one = int(input("lower = "))
two = int(input("higher = "))

start = time.time()

for x in range(one,two + 1):
factorial = factorial * two
two = two - 1

end = time.time()

print("DONE! ")
print(end - start, "Seconds to compute")

start = time.time()

factorial = str(factorial)

f = open('Ans_1.txt','w')
f.write(factorial)
f.close()

end = time.time()

print(end - start, "Seconds to convert and save")

print(len(factorial), "Digets")

最佳答案

你可以试试 gmpy2 x.digits([base])。

import time
from gmpy2 import mpz


x = 123456789**12345

start = time.time()
python_str = str(x)
end = time.time()
print(end - start, "Python conversion time")

r = mpz(x)
start = time.time()
gmpy2_str = r.digits()
end = time.time()
print(end-start, "gmpy2 conversion time")

以上测试输出:

1.0336394309997559 Python转换时间

0.03306150436401367 gmpy2转换时间

关于Python 快速从 int 到 string 的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48135230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com