使用Python将小数转换为64的最有效方法
将小数转化为64(URL友好型)和背部的最有效方法是什么?
我当前的代码,
import numpy as np
a = "-0123456789ABCDEFGHIJKLM64OPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"
A = {k:i for i,k in enumerate(a)}
def dec_url(x:int, n:int=4):
o = []
for i in range(n):
m = x%(64**(i+1))
x -= m
o.append(a[m//(64**i)])
return ''.join(o[::-1])
def url_dec(s: str):
return np.sum(map(lambda i:A.get(i[1])*(64**(i[0])),enumerate(s[::-1])))
What is the most efficient way to convert decimal into base 64 (URL friendly) and back.
My current code,
import numpy as np
a = "-0123456789ABCDEFGHIJKLM64OPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"
A = {k:i for i,k in enumerate(a)}
def dec_url(x:int, n:int=4):
o = []
for i in range(n):
m = x%(64**(i+1))
x -= m
o.append(a[m//(64**i)])
return ''.join(o[::-1])
def url_dec(s: str):
return np.sum(map(lambda i:A.get(i[1])*(64**(i[0])),enumerate(s[::-1])))
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
有更好的方法可以编码可变长度整数,因此仅出于教育目的:
There are better methods to encode a variable length integer, so for education purposes only: