python输出二进制数_Python计算二进制数及输出补码
來自公眾號:Python哦編程吧 作者:小灰輝
今天有一位剛剛大一的讀者私信我說:如何通過Python實現用戶輸入整數,讓程序輸出二進制數的補碼呢?
我看到的第一反應是不管題目難不難都應該先去了解關于問題的計算方法和解決辦法,比如這里我們需要知道如何計算補碼,正數的補碼以及負數的補碼。當然了正數的補碼也就是原碼了,那如何輸出負數的補碼呢?
我們都知道計算機處理數據的方式無論是計算還是儲存或是傳輸都是以二進制數的形式來完成的。Python中有自己的函數來計算二進制、八進制以及十進制,如:bin()函數將十進制數轉換成二進制數,oct()函數將十進制數轉換成八進制數,hex()函數將十進制數轉換成十六進制數。
案例:>>>Bin(10)
‘0b1010’
>>>oct(10)
‘0o12’
>>>hex(10)
‘0xa’
同樣int()函數可以把二進制、八進制和十六進制轉換成十進制類型。
案例:>>>int(‘1010’,2)#’1010’說明要進行轉換的數字,記得用引號引主。2用來說明前面的1010是什么進制數.
10
>>>int(‘77’,8)
63
>>>int(‘4a’,16)
74
言歸正傳,介紹了一些函數的使用之后,對于開頭的題目其實就很容易解決了,程序如下:#獲取用戶輸入十進制數(整數)
dec = int(input('輸入數字:'))
print('轉換為二進制數為:',bin(dec).replace('0b',''))#replace()是bin()函數的一個方法,用于去掉輸出時前面帶有的'0b'。
print('轉換為二進制數的補碼為:',bin(2**8+(dec)))#補碼的計算方法
三行代碼就可以實現用戶輸入數字-->轉換成二進制數->輸出對應的補碼,可見Python的強大及簡潔的特性,關于Python的更多特性可以閱讀一文讀懂Python的前世今生。
總結
以上是生活随笔為你收集整理的python输出二进制数_Python计算二进制数及输出补码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java graphics类详解_Jav
- 下一篇: 利用python批量读取图片的EXIF信