将整数转换为二进制的Python代码

标签 python binary integer

我需要 Python 3.3 中的代码来将整数转换为二进制。 这是我的第一次尝试:

a = input(str("Please Enter a Number")
if a == float:
    print (1)
else print(0)
b = a/2
while True:
    if b == float:
        print(1)
    else print(0)

我不知道为什么我总是收到 if a == float: 的错误。 而且我知道其余的代码也是错误的,但是这个 : 让我抓狂。

最佳答案

你的代码有很多问题:

  1. 你的缩进是关闭的。缩进在 Python 中非常重要,因为这是它知道什么是什么的方式。
  2. 您需要使用 isinstance查看对象是否为 float 。我假设这就是您尝试使用 a == float 进行的操作。但是,这没有意义,因为在 Python 3.x. 中,input 总是返回一个字符串对象。所以,a 是一个字符串。但是,如果 float 实际上是一个变量,那么您应该更改它的名称。将变量命名为 float 是一种不好的做法,因为它会覆盖内置变量。
  3. 您在每个 else 的末尾都缺少一个冒号。
  4. 第一行缺少右括号。
  5. 第一行的 str 是不必要的(不是错误,但我只是想提一下)。

但是,我不会解决所有这些问题,而是要向您介绍 bin内置:

>>> n = 127
>>> bin(n)
>>> # The "0b" at the start means "binary".
'0b1111111'
>>> # This gets rid of the "0b"
>>> bin(n)[2:]
'1111111'
>>>

它的构建明确是为了做你想做的事。

此外,这里有一些您可能会喜欢的 Python 引用资料:

http://www.tutorialspoint.com/python/python_overview.htm

http://wiki.python.org/moin/BeginnersGuide/Programmers

关于将整数转换为二进制的Python代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19668774/

相关文章:

python - 如何使用 SEC 网站的 BeautifulSoup 的 getText() 方法忽略 HTML 中嵌入的 jpeg 图像数据

python - Python 中的固定宽度整数类型(例如 uint32)

python - 我正在尝试使用 OpenCV 和 Python 计算我眼睛的中心点

ruby - 使用 Ruby 自动打开二进制文件

matlab - 在 Matlab 中读写二进制文件

binary - 逗号分隔的二进制参数? - Elixir

php - MySQL 如何检查字段中的值是整数还是文本

jpa - 标准查询 - 使用 "like"搜索整数

python - 解决此问题的更清洁/更短的方法?

python - 追加到列表中的几个列表