【发布时间】:2016-09-19 23:01:28
【问题描述】:
所以我是编程新手,最近我接到了一个任务,要创建一个程序,可以将二进制转换为十进制,反之亦然,十进制转换为十六进制,反之亦然。问题是,我不允许使用int() 或hex() 或bin() 等可用函数。
我可能已经找到了一种将十进制转换为二进制的方法,我在朋友的笔记本电脑(在 Windows 上运行)上进行了尝试,并且成功了。但是当我试图在我自己的笔记本电脑(MacBook)上执行它时,即使它是完全相同的代码,它也不会运行。代码如下:
def dectobin(x):
temporary_result = ""
while x > 0:
result = str(x % 2) + temporary_result
x = x // 2
return result
结果不是二进制数,而是返回x % 2 的值。有谁知道为什么它在 Mac 上而不是在 Windows 上这样做?如果是这样,我哪里出错了?我该如何解决?
【问题讨论】:
-
您确定在两台计算机上使用相同版本的 Python 吗?
-
我看不出这将如何在任何平台上运行。
-
它也不适用于任何版本的 Python,因此在两台计算机上是否相同并不重要。
标签: python windows macos python-3.x