python實(shí)現(xiàn)整數(shù)的二進(jìn)制循環(huán)移位
題目:如何在python中實(shí)現(xiàn)整數(shù)的二進(jìn)制循環(huán)移位?
概述
在python中,可以通過<<以及>>運(yùn)算符實(shí)現(xiàn)二進(jìn)制的左移位以及右移位,然而并沒有實(shí)現(xiàn)循環(huán)移位的運(yùn)算符,暫時也找不到可以實(shí)現(xiàn)循環(huán)移位的函數(shù),所以在本文中,主要介紹了如何使用字符的切片運(yùn)算實(shí)現(xiàn)循環(huán)位移。
一、實(shí)現(xiàn)思路
1、利用字符串的format函數(shù)將int整數(shù)值轉(zhuǎn)化為特定位數(shù)的二進(jìn)制值
2、利用字符的切片操作實(shí)現(xiàn)循環(huán)位移
二、實(shí)現(xiàn)代碼
# left circular shift
#int_value是輸入的整數(shù),k是位移的位數(shù),bit是整數(shù)對應(yīng)二進(jìn)制的位數(shù)
def circular_shift_left (int_value,k,bit = 8):
bit_string = '{:0%db}' % bit
bin_value = bit_string.format(int_value) # 8 bit binary
bin_value = bin_value[k:] + bin_value[:k]
int_value = int(bin_value,2)
return int_value
# right circular shift
def circular_shift_right (int_value,k,bit = 8):
bit_string = '{:0%db}' % bit
bin_value = bit_string.format(int_value) # 8 bit binary
bin_value = bin_value[-k:] + bin_value[:-k]
int_value = int(bin_value,2)
return int_value
if __name__ == "__main__":
A=1
B=circular_shift_right(A, 1, 8)
print(A,"右循環(huán)位移1位的結(jié)果是",B)
C = 128
D =circular_shift_left(C,1,8)
print(C, "左循環(huán)位移1位的結(jié)果是", D)
三、運(yùn)行結(jié)果

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 一篇教程教你學(xué)會Python進(jìn)制轉(zhuǎn)換(十進(jìn)制轉(zhuǎn)二進(jìn)制、八進(jìn)制、十六進(jìn)制)
- Python+OpenCV實(shí)現(xiàn)將圖像轉(zhuǎn)換為二進(jìn)制格式
- Python 字符串與二進(jìn)制串的相互轉(zhuǎn)換示例
- Python二進(jìn)制串轉(zhuǎn)換為通用字符串的方法
- python十進(jìn)制和二進(jìn)制的轉(zhuǎn)換方法(含浮點(diǎn)數(shù))
- Python 內(nèi)置函數(shù)進(jìn)制轉(zhuǎn)換的用法(十進(jìn)制轉(zhuǎn)二進(jìn)制、八進(jìn)制、十六進(jìn)制)
- Python 中將二進(jìn)制轉(zhuǎn)換為整數(shù)的多種方法
相關(guān)文章
超詳細(xì)PyTorch實(shí)現(xiàn)手寫數(shù)字識別器的示例代碼
這篇文章主要介紹了超詳細(xì)PyTorch實(shí)現(xiàn)手寫數(shù)字識別器的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
Python神器之使用watchdog監(jiān)控文件變化
這篇文章主要為大家詳細(xì)介紹了Python中的神器watchdog以及如何使用watchdog監(jiān)控文件變化,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下2023-12-12
django創(chuàng)建最簡單HTML頁面跳轉(zhuǎn)方法
今天小編就為大家分享一篇django創(chuàng)建最簡單HTML頁面跳轉(zhuǎn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08
window11系統(tǒng)下Python3.11安裝numpy庫超詳細(xì)教程
這篇文章主要給大家介紹了關(guān)于window11系統(tǒng)下Python3.11安裝numpy庫的相關(guān)資料,NumPy是Python的第三方擴(kuò)展包,但它并沒有包含在Python標(biāo)準(zhǔn)庫中,因此您需要單獨(dú)安裝它,需要的朋友可以參考下2023-12-12

