擅长:python、mysql、java
<p>这是因为<strong>bin(x)</strong>返回一个<strong>字符串</strong><br/>
参考号:<a href="https://docs.python.org/3/library/functions.html#bin" rel="nofollow noreferrer">https://docs.python.org/3/library/functions.html#bin</a></p>
<p>因此,在上面的行中,您尝试<strong>&;(and)</strong>字符串和int,这会导致错误。<br/>
因此,在使用<strong>&;(and)</strong>运算符之前,我们需要将字符串转换为int。<br/><br/>我建议您直接在输入数字上使用<strong>&;(and)</strong>运算符,而不是这些繁琐的任务。在</p>
<pre><code>def check_bit4(x):
check = 8 #decimal representation of 0b00001000
if x & check: #if condition will be true if the answer is non zero
return("on")
else:
return("off")
x = int(input("Enter Integer "))
print(check_bit4(x))
</code></pre>
<p>我希望这能解决您的问题:)</p>