python的按位运算
#coding=utf-8#"&"按位与运算,是指一个数字转化为二进制,然后这些二进制的数按位来进行与运算a=7&18print a'''首先将7转化为二进制,得到7的二进制值是111,自动补全为8位,即00000111,然后将18转化为二进制,得到18的二进制值是10010,同样补全8位,00010010我们将00000111和00010010按位进行与运算,得到的结果是00000010,然后转化为十进制,为2''' #按位或运算,我们要将数字转化为二进制之后按位进行或运算b=7|18print bprint b'''7的二进制是00000111,18的二进制是00010010我们将00000111和00010010按位进行或运算,得到的结果是00010111,然后我们将00010111转化为十进制,得到数字23''' #"^"按位异或c=7^18print c'''异或是指不同为1,相同为07的二进制形式是00000111,18的二进制形式是00010010我们将00000111和00010010按位进行异或运算得到的结果死00010101,然后将00010101转化为十进制得到数字21''' #"~"按位反转~x=-(x+1)d=~18 #~18=-(18+1)=-19print d #"<<"左移'''比如18左移就是将他的二进制形式00010010左移,即移后称为00100100,即为00100100,为36,左移一格单位相当于乘2,左移两个单位相当于乘4,左移3个单位相当于乘8.左移n个单位相当于乘2的n次幂'''e=18<<1print e f=3<<3print f
#coding=utf-8#"&"按位与运算,是指一个数字转化为二进制,然后这些二进制的数按位来进行与运算a=7&18print a'''首先将7转化为二进制,得到7的二进制值是111,自动补全为8位,即00000111,然后将18转化为二进制,得到18的二进制值是10010,同样补全8位,00010010我们将00000111和00010010按位进行与运算,得到的结果是00000010,然后转化为十进制,为2''' #按位或运算,我们要将数字转化为二进制之后按位进行或运算b=7|18print bprint b'''7的二进制是00000111,18的二进制是00010010我们将00000111和00010010按位进行或运算,得到的结果是00010111,然后我们将00010111转化为十进制,得到数字23''' #"^"按位异或c=7^18print c'''异或是指不同为1,相同为07的二进制形式是00000111,18的二进制形式是00010010我们将00000111和00010010按位进行异或运算得到的结果死00010101,然后将00010101转化为十进制得到数字21''' #"~"按位反转~x=-(x+1)d=~18 #~18=-(18+1)=-19print d #"<<"左移'''比如18左移就是将他的二进制形式00010010左移,即移后称为00100100,即为00100100,为36,左移一格单位相当于乘2,左移两个单位相当于乘4,左移3个单位相当于乘8.左移n个单位相当于乘2的n次幂'''e=18<<1print e f=3<<3print f #">>"右移'''右移是左移的逆运算,即相对的二进制数向右移动,右移一个单位相当于除以2,右移两个单位相当与除以4,右移3个单位相当于除以8,右移n个单位相当于除以2的n次幂'''g=18>>1print g h=18>>2print h #"<="小于等于符号,比较运算,小于或者等于,返回一个bool值h=3<=3print h i=4<=3print i #">="j=1>=3print j k=4>=3print k #"=="比较两个对象是否相等l=12==13print l m="hello"=="hello"print m #not逻辑非n=Truem=not nprint m o=Falseprint not o #and逻辑与'''True and True 等于TrueTrue and False 等于FalseFalse and True 等于Flase''' print True and True #"or";逻辑或'''True and True 等于TrueTrue and False 等于TrueFalse and True 等于Flase'''print True and False
python的按位运算的更多相关文章
- jave 逻辑运算 vs 位运算 + Python 逻辑运算 vs 位运算
JAVA中&&和&.||和|(短路与和逻辑与.短路或和逻辑或)的区别 博客分类: 面试题目 Java.netBlog 转自 :http://blog.csdn.net/web ...
- python中的位运算
目录 1.判断奇偶数 2.交换两个数 3.找出没有重复的数 4.3的n次方 5. 找出不大于N的最大的2的幂指数 1.判断奇偶数 如果把n以二进制形式展示的话,我们只需要判断最后一个二进制位是1还是0 ...
- python数据类型和数据运算
数字 整型 包括正整数和负整数,和数学的表示方法一样.如:1.100.8008.-12等. 浮点型 浮点数字也称为小数,如果按照科学计数法表示时,小数点的位置是可变的.如:1.23x109==12.3 ...
- 剑指offer用位运算实现两个数相加,及python相关的位操作
题目:写一个函数,求两个整数之和,要求在函数体内不得使用+.-.*./四则运算符号. 代码: # -*- coding:utf-8 -*-class Solution: def Add(self ...
- 利用位运算进行a+b的计算(Java&&Python)
题目链接 需要用到的位运算操作:异或(^).与(&).右移(<<) 异或运算:又称不进位加法,a^b得到的结果为a与b相加,但是需要进位的地方不进位得到的结果 与运算:找出来a和b ...
- python位运算
什么是位运算 位运算就是把数字当成二进制来进行计算,位运算有六种:&(与), |(或), ^(异或), ~(非), <<(左移), >>(右移) &(与) &a ...
- Python语言中的按位运算
(转)位操作是程序设计中对位模式或二进制数的一元和二元操作. 在许多古老的微处理器上, 位运算比加减运算略快, 通常位运算比乘除法运算要快很多. 在现代架构中, 情况并非如此:位运算的运算速度通常与加 ...
- Python 进制转换、位运算
一.进制转换 编程用十进制,十进制转换为二进制.八进制.十六进制 In [135]: bin(23) Out[135]: '0b10111' In [136]: oct(23) Out[136]: ' ...
- Python笔记_第一篇_面向过程_第一部分_3.进制、位运算、编码
通过对内存这一个部分的讲解,对编程会有一个相对深入的认识.数据结构是整个内存的一个重要内容,那么关于数据结构这方面的问题还需要对进制.位运算.编码这三个方面再进行阐述一下.前面说将的数据结构是从逻辑上 ...
随机推荐
- CSS样式margin:0 auto不居中
<style type="text/css">html,body{height:100%;width:960px;}.container{background-colo ...
- 反射-b
Class pkClass=NSClassFromString(@"PKAddPassesViewController"); if (pkClass) { NS ...
- 构建高可用web站点学习(一)
单个服务器如何处理请求 web服务器最简单的形式就是一个程序,它侦听HTTP请求,在收到一个HTTP请求之后做出回复.当然在接收请求后服务器所做的东西是我们关注的焦点.在下文中也会提及到node是如何 ...
- angular2 学习笔记 ( Form 表单 )
refer : https://angular.cn/docs/ts/latest/guide/forms.html https://angular.cn/docs/ts/latest/cookboo ...
- Codec plugins ? multiline
Codec plugins ? multiline multiline codec 会折叠多行消息,合并它们到一个事件 这个codec 原始的目的是允许 连接多行信息从文件到一个单独的事件. 比如, ...
- Codeforces Round #312 (Div. 2) C.Amr and Chemistry
Amr loves Chemistry, and specially doing experiments. He is preparing for a new interesting experime ...
- POJ 3281 牛双选问题
题目大意:有F种食物和D种饮料,每种食物或饮料只能供一头牛享用,且每头牛只享用一种食物和一种饮料.现在有N头牛,每头牛都有自己喜欢的食物种类列表和饮料种类列表,问最多能使几头牛同时享用到自己喜欢的食物 ...
- 32位vs2010的项目如何在64位系统上运行
64位注册 1. 关闭Visual Studio.2. 在Visual Studio Tools目录,以管理员身份运行Visual Studio Command Prompt (2010),[注:这个 ...
- 尚学堂 JAVA Day3 概念总结
java中的运算符 1.算术运算符 + - * / % Arithmetic operators + 运算符有三种身份 Additive Operator 1)加法:如 a + b; 2)连接:如 “ ...
- adb Logcat用法
转自: http://blog.csdn.net/tiantianshangcha/article/details/6288537 个人认为有一下几个常用命令: adb logcat -b radio ...