擅长:python、mysql、java
<p>既然这是一个公平点-这里有一个答案,这是相当python和希望作为一个规范的参考未来的问题。你知道吗</p>
<p>首先,将输入保持为字符串:</p>
<pre><code>binary_value = input('Enter a binary number: ')
</code></pre>
<p>然后使用内置的<code>int</code>和<code>base</code>参数2(表示将字符串解释为二进制数字)从字符串中获取整数:</p>
<pre><code>number = int(binary_value, 2)
# 10001111 -> 143
</code></pre>
<p>然后您可以使用<code>f-string</code>来打印带有格式说明符<code>X</code>的数字,格式说明符的意思是“带大写字母和无前缀的十六进制”:</p>
<pre><code>print(f'The hex value is {number:X}')
</code></pre>
<p>您的整个代码库将是这样的(坚持两个函数和命名约定):</p>
<pre><code>def binaryToHex(binaryValue):
number = int(binaryValue, 2)
return format(number, 'X')
def main():
binaryValue = input('Enter a binary number: ')
print('The hex value is', binaryToHex(binaryValue))
main()
</code></pre>