python实现整数的二进制循环移位


Posted in Python onMarch 08, 2019

题目:如何在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)

三、运行结果

python实现整数的二进制循环移位

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现计算资源图标crc值的方法
Oct 05 Python
使用Python下载歌词并嵌入歌曲文件中的实现代码
Nov 13 Python
Python动刷新抢12306火车票的代码(附源码)
Jan 24 Python
Python中%是什么意思?python中百分号如何使用?
Mar 20 Python
python+Splinter实现12306抢票功能
Sep 25 Python
python 实现dict转json并保存文件
Dec 05 Python
Python实现代码块儿折叠
Apr 15 Python
Python小白垃圾回收机制入门
Jun 09 Python
使用tensorflow根据输入更改tensor shape
Jun 23 Python
如何通过python实现IOU计算代码实例
Nov 02 Python
Python爬虫之Selenium鼠标事件的实现
Dec 04 Python
Python实现文本文件拆分写入到多个文本文件的方法
Apr 18 Python
Python3实现的反转单链表算法示例
Mar 08 #Python
Python3实现的判断回文链表算法示例
Mar 08 #Python
python字符串循环左移
Mar 08 #Python
详解Python Matplot中文显示完美解决方案
Mar 07 #Python
详解Python安装tesserocr遇到的各种问题及解决办法
Mar 07 #Python
Python3实现的判断环形链表算法示例
Mar 07 #Python
浅析Python 读取图像文件的性能对比
Mar 07 #Python
You might like
社区(php&amp;&amp;mysql)四
2006/10/09 PHP
PHP中HTML标签过滤技巧
2014/01/07 PHP
Javascript 判断函数类型完美解决方案
2009/09/02 Javascript
JavaScript删除数组元素的方法
2015/03/20 Javascript
JavaScript中this的9种应用场景及三种复合应用场景
2015/09/12 Javascript
实例讲解js验证表单项是否为空的方法
2016/01/09 Javascript
关于Jquery中的事件绑定总结
2016/10/26 Javascript
AngularJs实现聊天列表实时刷新功能
2017/06/15 Javascript
js实现图片放大展示效果
2017/08/30 Javascript
vue自定义底部导航栏Tabbar的实现代码
2018/09/03 Javascript
javascript中call,apply,callee,caller用法实例分析
2019/07/24 Javascript
nuxt引入组件和公共样式的操作
2020/11/05 Javascript
python关键字and和or用法实例
2015/05/28 Python
pygame实现弹力球及其变速效果
2017/07/03 Python
浅谈Python中的可变对象和不可变对象
2017/07/07 Python
python实现分页效果
2017/10/25 Python
Python跨文件全局变量的实现方法示例
2017/12/10 Python
python单线程文件传输的实例(C/S)
2019/02/13 Python
python3 常见解密加密算法实例分析【base64、MD5等】
2019/12/19 Python
Python matplotlib读取excel数据并用for循环画多个子图subplot操作
2020/07/14 Python
基于python实现监听Rabbitmq系统日志代码示例
2020/11/28 Python
html5配合css3实现带提示文字的输入框(摆脱js)
2013/03/08 HTML / CSS
校长先进事迹材料
2014/02/01 职场文书
小学教师师德反思
2014/02/03 职场文书
先进集体获奖感言
2014/02/13 职场文书
技校毕业生个人学习的自我评价
2014/02/21 职场文书
经理秘书求职自荐信范文
2014/03/23 职场文书
语文教研活动总结
2014/07/02 职场文书
群众路线四风自我剖析材料
2014/10/08 职场文书
张家口市高新区党工委群众路线教育实践活动整改方案
2014/10/25 职场文书
民事上诉状范文
2015/05/22 职场文书
仰望星空观后感
2015/06/10 职场文书
2016年毕业实习心得体会范文
2015/10/09 职场文书
人民调解协议书
2016/03/21 职场文书
2019各种承诺书范文
2019/06/24 职场文书
mysql备份策略的实现(全量备份+增量备份)
2021/07/07 MySQL