python实现整数的二进制循环移位
作者:C小C 时间:2022-09-08 23:11:39
题目:如何在python中实现整数的二进制循环移位?
概述
在python中,可以通过<<以及>>运算符实现二进制的左移位以及右移位,然而并没有实现循环移位的运算符,暂时也找不到可以实现循环移位的函数,所以在本文中,主要介绍了如何使用字符的切片运算实现循环位移。
一、实现思路
1、利用字符串的format函数将int整数值转化为特定位数的二进制值
2、利用字符的切片操作实现循环位移
二、实现代码
# left circular shift
#int_value是输入的整数,k是位移的位数,bit是整数对应二进制的位数
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,"右循环位移1位的结果是",B)
C = 128
D =circular_shift_left(C,1,8)
print(C, "左循环位移1位的结果是", D)
三、运行结果
来源:https://blog.csdn.net/C_chuxin/article/details/83691674
标签:python,二进制,循环移位
0
投稿
猜你喜欢
asp+xml自动将远程页面中的图片下载到本地
2007-08-23 13:34:00
特殊字符、常规符号及其代码对照表
2010-08-24 18:13:00
分享18个最佳代码编辑器/IDE开发工具
2022-03-26 01:31:24
css元素层叠级别及z-index剖析
2008-08-29 12:41:00
Python设计模式结构型代理模式
2023-06-30 19:23:58
解决python中使用PYQT时中文乱码问题
2023-07-28 10:15:51
ThinkPHP实现将本地文件打包成zip下载
2024-05-11 09:48:29
C#定制Excel界面并实现与数据库交互的方法
2024-01-25 13:13:24
django连接Mysql中已有数据库的方法详解
2024-01-23 09:00:59
Coda 前端开发插件 F2E Tools
2009-09-22 14:53:00
如何在python中实现ECDSA你知道吗
2023-03-14 14:07:17
Python urllib3软件包的使用说明
2023-08-04 13:51:31
Mysqlslap MySQL压力测试工具 简单教程
2024-01-15 20:10:10
python爬虫实例之获取动漫截图
2023-08-17 22:13:57
js取模(求余数)隔行变色
2024-04-29 14:06:47
go mod 使用旧版本 版本号指定方式
2024-05-21 10:26:17
Js实现粘贴上传图片的原理及示例
2024-04-19 10:44:50
Yahoo!网站性能最佳体验的34条黄金守则——JavaScript和CSS
2008-05-29 13:34:00
Javascript实现图片懒加载插件的方法
2024-04-19 10:16:44
Python列表计数及插入实例
2023-05-26 23:41:12