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爬取网站数据保存使用的方法
Nov 20 Python
python实现DNS正向查询、反向查询的例子
Apr 25 Python
python使用在线API查询IP对应的地理位置信息实例
Jun 01 Python
python分布式环境下的限流器的示例
Oct 26 Python
使用Python机器学习降低静态日志噪声
Sep 29 Python
如何使用Python实现自动化水军评论
Jun 26 Python
wxPython:python首选的GUI库实例分享
Oct 05 Python
Pytorch释放显存占用方式
Jan 13 Python
用什么库写 Python 命令行程序(示例代码详解)
Feb 20 Python
pytorch cuda上tensor的定义 以及减少cpu的操作详解
Jun 23 Python
Python爬虫实战案例之爬取喜马拉雅音频数据详解
Dec 07 Python
Python selenium模拟网页点击爬虫交管12123违章数据
May 26 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使用者状态管理功能的应用
2006/10/09 PHP
PHP学习之数组的定义和填充
2011/04/17 PHP
php控制linux服务器常用功能 关机 重启 开新站点等
2012/09/05 PHP
如何用PHP实现插入排序?
2013/04/10 PHP
php生成过去100年下拉列表的方法
2015/07/20 PHP
PHP mysqli_free_result()与mysqli_fetch_array()函数详解
2016/09/21 PHP
thinkphp5使用无限极分类
2019/02/18 PHP
情人节之礼 js项链效果
2012/02/13 Javascript
jQuery浏览器CSS3特写兼容实例
2015/01/19 Javascript
详解JavaScript的另类写法
2016/04/11 Javascript
浅谈jquery中的each方法$.each、this.each、$.fn.each
2016/06/23 Javascript
JavaScript 身份证号有效验证详解及实例代码
2016/10/20 Javascript
JS判断键盘是否按的回车键并触发指定按钮点击操作的方法
2017/02/13 Javascript
javascript实现数据双向绑定的三种方式小结
2017/03/09 Javascript
Js实现中国公民身份证号码有效性验证实例代码
2017/05/03 Javascript
微信小程序 自动登陆PHP源码实例(源码下载)
2017/05/08 Javascript
vue router+vuex实现首页登录验证判断逻辑
2018/05/17 Javascript
通过jquery toggleClass()属性制作文章段落更改背景颜色
2018/05/21 jQuery
Javascript中绑定click事件的四种方式介绍
2018/10/26 Javascript
vuex存值与取值的实例
2019/11/06 Javascript
Python实现高效求解素数代码实例
2015/06/30 Python
python实现简单图片物体标注工具
2019/03/18 Python
python关于调用函数外的变量实例
2019/12/26 Python
利用setuptools打包python程序的方法步骤
2020/01/18 Python
Python ORM框架Peewee用法详解
2020/04/29 Python
使用CSS3编写类似iOS中的复选框及带开关的按钮
2016/04/11 HTML / CSS
英国男女奢华内衣和泳装购物网站:Figleaves
2017/01/28 全球购物
澳大利亚手袋、珠宝和在线时尚精品店:The Way
2019/12/21 全球购物
外贸员简历中的自我评价
2014/03/04 职场文书
《泉水》教学反思
2014/04/11 职场文书
教师党员个人自我剖析材料
2014/09/29 职场文书
安全检查汇报材料
2014/12/26 职场文书
教师学期末个人总结
2015/02/13 职场文书
公司财务管理制度
2015/08/04 职场文书
用Python制作灯光秀短视频的思路详解
2021/04/13 Python
二维码条形码生成的JavaScript脚本库
2022/07/07 Javascript