Python中文
首页
教程
问答
标签
搜索
登录
注册
Python encode base64不期望正确的结果?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在编写一个base64编码方法来将大整数转换为base64。然而,当我测试我的方法时,我发现结果很奇怪。虽然<code>encode_b64(int('908540701891980503'))</code>方法给了我<code>ybyPRoQW0X</code>,但是我期望正确的<code>ybyPRoQWzX</code></p> <pre><code>def encode_b64(n): table = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_' result = [] temp = n if 0 == temp: return '0' else: while 0 < temp: idx = temp % 64 result.append(table[idx]) temp /= 64 temp = int(temp) return ''.join([x for x in reversed(result)]) </code></pre> <p>我检查了好几次,但没有发现逻辑错误。我的代码怎么了</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>这是典型的整数除法问题</p> <p>在python2中<code>temp /= 64</code>将执行整数除法,因此您的代码可以正常工作。但在python3中,这将导致一个浮动</p> <p>要解决python3中的问题,请将<code>temp /= 64</code>更改为<code>temp //= 64</code>,以强制整数除法并去掉<code>temp = int(temp)</code>行</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
当启用身份验证时,超过一定大小的http发布失败
9 回答
当呈现Flask温度时,bokeh图为空
4 回答
当呈现模板时,如何引用sqlalchemy中的自定义字段?
1 回答
当周围有更多相同类型的标记时,如何从一个标记中提取数据
4 回答
当周数跨越多个y时,如何使用Pandas groupby week
7 回答
当呼唤django和python提示时
6 回答
当命令`Brew installPython@2`然后出现错误“Theme error”。如何解决?
8 回答
当命令[1]不存在时,用户输入命令以列出超出范围的索引
7 回答
当命令/启动被发送到bot时,bot应该删除发送给组的标签;但是bot没有
6 回答
当命令lin执行时,导入datetime会在Python脚本中引发ModuleNotFound“math”
4 回答
当命令中提到Bot时,Bot发送其前缀
10 回答
当命令位于DM中时,Python Discord.py bot将角色分配给服务器中的用户
8 回答
当命令在discord.py中缺少必需的参数时,如何显示消息
6 回答
当命令在多个不同的服务器上处于活动状态时,如何在discord.py上使用while循环
10 回答
当命令在提示符下成功运行时,Python subprocess.check_输出产生错误
9 回答
当命令提示时自动按键按回车键
6 回答
当命令提示符意外关闭时,如何访问python虚拟环境?
2 回答
当命令提示符给出导入错误时,当我尝试运行服务器python文件时,需要进行什么更改?
10 回答
当命令有双引号时,如何从python运行windows命令行命令
1 回答
当命令的一部分来自用户inpu时在linux服务器上执行命令的安全方法
10 回答