python左移位运算_python移位运算符

1,二进制方式

>>> bin( 1 )

'0b1'

>>> bin( 10 )

'0b1010'

>>> a = 0b10

>>> a

2

>>>

2,移位运算符( >> << ): 箭头向左就是  向左移位  反正 箭头向右  就是向右位移,移位针对的是二进制

如,十进制的1   ---> 对应的二进制是  0000 0001

1 << 1 : 向左移动1位

0000 0001  --->0000 0010(  2 )

1 << 2 : 向左移动2位

0000 0001  --->0000 0100( 4 )

2 << 2 : 2向左移动2位

0000 0010 ---> 0000 1000( 8 )

>>> 1 << 1

2

>>> 1 << 2

4

>>> 2 << 2

8

>>>

向右移动是一样的道理,先把数转成二进制,再向右移动对应的位数

>>> 1 >> 1

0

>>> 2 >> 1

1

>>> 3 >> 1

1

>>> 6 >> 1

3

>>>

6( 0000 0110 ) ---->经过 (6 >> 1)  0000  0011( 3 )

1.与运算:A与B值均为1时,A、B与的运算结果才为1,否则为0 (运算符:&)

2.或运算:A或B值为1时,A、B或的运算结果才为1,否则为0  (运算符:|)

3.异或运算:A与B不同为1时,A、B的运算结果才为1,否则为0  (运算符:^)

4.按位翻转(按位取反):将内存中表示数字的2进制数取反0取1,1取0 (运算符:~)

>>> 1 & 1

1

>>> 1 & 0

0

>>> 4 & 1

0

>>>

>>> 1 | 1

1

>>> 1 | 0

1

>>> 4 | 1

5

>>>

>>> 1 ^ 1

0

>>> 7 ^ 8

15

>>>

>>> ~5

-6

>>> ~20

-21

>>>

【Python】2&period;17学习笔记 移位运算符&comma;逻辑运算符

移位运算符 左移运算符 \(<

(Python )运算符

这一节,将学习运算符,主要是算术运算符和逻辑运算符 1.算术运算符 除法运算,整数/整数=整数,浮点数/整数=浮点数,整数/浮点数=浮点数: >>> 17/35>>&gt ...

介绍python中运算符优先级

下面这个表给出Python的运算符优先级,从最低的优先级(最松散地结合)到最高的优先级(最紧密地结合).这意味着在一个表达式中,Python会首先计算表中较下面的运算符,然后在计算列在表上部的运算符. ...

java 移位运算符

java中有三种移位运算符 <<      :     左移运算符,num << 1,相当于num乘以2 >>      :     右移运算符,num >& ...

C&plus;&plus;移位运算符

关于逻辑移位.算术移位可参见迅雷深大笔试题部分.的一道题. 以前看到C++标准上说,移位运算符(<<.>>)出界时的行为并不确定: The behavior is undefi ...

Java中的移位运算符

java中有三种移位运算符 <>      :     右移运算符,num >& ...

Python基本运算符

Python基本运算符 什么是操作符? 简单的回答可以使用表达式4 + 5等于9,在这里4和5被称为操作数,+被称为操符. Python语言支持操作者有以下几种类型. 算术运算符 比较(即关系)运算符 ...

移位运算符&lpar;JAVA&rpar;

java中有三种移位运算符 <>     :     右移运算符,num >&g ...

随机推荐

C&plus;&plus;之路进阶——poj3461(Oulipo)

Oulipo Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 35694   Accepted: 14424 Descript ...

dijit样式定制&lpar;二&rpar;dijit&period;form&period;Select与dijit&period;form&period;NumberSpinner

dijit.form.Select: Select的样式位于Claro/form/Select.less中,Select主要通过table来布局,下图可以看到Select的布局结构 介绍几个主要的cl ...

一些实用但不为人知的Unix命令

浮现在脑海的很多 Linux命令,其中一些不为人知,另一些则很常见,如下: xargs or parallel: 并行运行一些程序,命令有很多的选项 sed and awk: 广为人知并且非常有用的处 ...

UVA 11419 SAM I AM(最大二分匹配&amp&semi;最小点覆盖:K&&num;246&semi;nig定理)

题意:在方格图上打小怪,每次可以清除一整行或一整列的小怪,问最少的步数是多少,又应该在哪些位置操作(对输出顺序没有要求). 分析:最小覆盖问题 这是一种在方格图上建立的模型:令S集表示“行”,T集表示 ...

test md

[TOC] Glossary SUT SYSTEM UNDER TEST CUT CLASS UNDER TEST MUT METHOD UNDER TEST Tests without Use of ...

JS&comma;JQuery各种获取屏幕的宽度和高度

JQuery: $(document).ready(function(){ alert($(window).height()); //浏览器当前窗口可视区域高度 alert($(document).h ...

学习java应该了解一些html超文本标记语言(前端)

在自己学习的过程中遇到一些内容,怕忘记所以借助博客加深印象也方便查找! html超文本标记语言中,分行级元素和块级元素. 行级元素的含义:行级元素不独占一行,相邻的行级元素在一行排列:行级元素可以控制 ...

发现大量的TIME&lowbar;WAIT解决办法 -- 修改内核参数

今天早上一上班,有同事就反映公司好几个网站都打不开,登陆数据库 服务器(windows),发现很卡,于是重启了下服务器,进入系统后,没过一会问题依旧,查看了下系统进程,发现mysql占用率达到99%, ...

viewpager循环滚动和自动轮播的问题

ViewPager是一个常用的android组件,不过通常我们使用ViewPager的时候不能实现左右无限循环滑动,在滑到边界的时候会看到一个不能翻页的动画,可能影响用户体验.此外,某些区域性的Vie ...

java中mysql查询报错java&period;sql&period;SQLException&colon; Before start of result set

异常:java.sql.SQLException: Before start of result set 解决方法:使用rs.getString();前一定要加上rs.next(); sm = con ...