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.进制、位运算、编码
通过对内存这一个部分的讲解,对编程会有一个相对深入的认识.数据结构是整个内存的一个重要内容,那么关于数据结构这方面的问题还需要对进制.位运算.编码这三个方面再进行阐述一下.前面说将的数据结构是从逻辑上 ...
随机推荐
- URL编码详解
escape,encodeURI,encodeURIComponent. 据说还有base64,但会被 = 来补. 待编辑.
- python3 解析apk图标
有两处值小点,一是如何解压缩,另一个是如何写文件,第二点上我找的是phthon2的代码,一直写文件的时候报不是字符串的问题,将打开方式加上"b“的模式搞定 print文件出来直接删除了,原因 ...
- Java学习----构造方法的重载
一个类中有多个同名的参数不一样(参数的个数,参数的类型,参数的顺序)的构造方法 public class Student { public Student() { System.out.println ...
- PHP文件类型检查类-比较全的
在CSDN上淘来的一个文件类型的类,还不错,留下自己看! <? /** * 检证文件类型类 * * @author */ class FileTypeValidation { // 文件类型,不 ...
- Codeforces 556A Case of the Zeros and Ones(消除01)
Time Limit:1000MS Memory Limit:262144KB 64bit IO Format:%I64d & %I64u Description Andr ...
- Quartz2D使用
使用Quartz2D前 先导入QuartzCore.framework //划线 //1.获取图形上下文 CGContextRef ctx=UIGraphicsGetCurrentContext() ...
- 令用EclipseJ2EE创建的Dynamic Web project目录结构与用MyEclipse创建的Web project一样
Eclipse for EE 版本, 创建 Dynamic Web Project 会有俩个工程. 其中一个 是你创建的工程, 另外一个 是Servers 工程(其实也就是tomcat 的一个配置) ...
- PS微观效果
贴入命令必须在建立选区的情况下,然后设置图层的混合模式为“叠加”,这个是必须的. 专业相机的移轴镜头效果很好……PS搞出的不行 原素材如下(去云台山时照的): 打开渐变工具,在快速蒙版模式下选人,然后 ...
- Regularized Linear Regression with scikit-learn
Regularized Linear Regression with scikit-learn Earlier we covered Ordinary Least Squares regression ...
- SCALA常规练习B
package com.hengheng.scala class Point(val x : Int, val y : Int) { val isOriginal : Boolean = { x == ...