Python 我应该如何理解内置函数bin(x)?

Python 我应该如何理解内置函数bin(x)?,python,Python,将整数转换为二进制字符串。结果是一个有效的Python表达式。如果x不是Python int对象,那么它必须定义一个返回整数的\uuuu index\uuu()方法 因此,如果我想从Cadilac获取bin,我应该如何处理这个字符串和\uuuuuu index\uuu()方法?如何正确合成它们?car=“Cadillac” car = "Cadillac" binstr = "".join( [ bin((1<<8)+ord(s))[3:] for s in car ] ) bin

将整数转换为二进制字符串。结果是一个有效的Python表达式。如果
x
不是Python int对象,那么它必须定义一个返回整数的
\uuuu index\uuu()
方法

因此,如果我想从
Cadilac
获取
bin
,我应该如何处理这个字符串和
\uuuuuu index\uuu()
方法?如何正确合成它们?

car=“Cadillac”
car = "Cadillac"
binstr = "".join( [ bin((1<<8)+ord(s))[3:] for s in car ] )

binstr=“”.join([bin((1这应该让你开始:

>>> for c in "Cadillac":
...     n = ord(c)                  # convert the character to a number
...     print '{0:08b}'.format(n)   # show the number with 8 binary digits
... 
01000011
01100001
01100100
01101001
01101100
01101100
01100001
01100011

字符串
Cadillac
所需的输出是什么?
bin()
函数用于将数字转换为0和1的字符串以进行文本输出。我可以用这种方法将字符串转换为二进制字符串吗?现在我想我不能。有方法获得字符串的二进制字符串吗?我不明白“二进制字符串”是什么意思。它是一个输入的每个字符都有二进制表示的字符串吗?假设有一个名为
binstring()
的函数满足您的要求,那么
binstring('Cadilac')
的值是多少?我不知道。我不知道从哪里可以导入
binstring()
。您能告诉我吗?@Cadilac
binstring()
不存在。如果它存在,它会做什么?提供一个例子。这个例子只会导致一个混乱的位,因为bin()修剪前导零。一些字符将被添加为6位,一些字符将被添加为7位,并且没有分隔符来区分字符的开始和停止位置。Oops。你是非常正确的。正在修复。bin()、oct()和hex()的API在这方面确实令人恼火:-)你的答案比我的更清晰明了。谢谢!关于“格式”,我还有很多东西要学。
len(bin(1<<8+0)[3:])
"".join( [ bin((1<<8)+ord(s))[3:] for s in "Cadillac" ] )
>>> for c in "Cadillac":
...     n = ord(c)                  # convert the character to a number
...     print '{0:08b}'.format(n)   # show the number with 8 binary digits
... 
01000011
01100001
01100100
01101001
01101100
01101100
01100001
01100011