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.进制、位运算、编码
通过对内存这一个部分的讲解,对编程会有一个相对深入的认识.数据结构是整个内存的一个重要内容,那么关于数据结构这方面的问题还需要对进制.位运算.编码这三个方面再进行阐述一下.前面说将的数据结构是从逻辑上 ...
随机推荐
- C++ Primer 5th 第12章 动态内存
练习12.1:在此代码的结尾,b1 和 b2 各包含多少个元素? StrBlob b1; { StrBlob b2 = {"a", "an", "th ...
- CSS样式的面向对象思想(一)
今天来谈一谈CSS样式的面向对象写法.顾名思义,面向对象是高级语言具备的特性,主要是为了程序高可复用,解决模块之间的耦合关系,那么像CSS这样的脚本语言是否也可以使用面向对象的思想,来提高代码的可维护 ...
- CentOS安装rar、unrar解压缩软件的方法
闲话不说,centos上如何安装rar.unrar在线解压缩软件呢?如果您的centos是32位的,执行如下命令: wget http://www.rarsoft.com/rar/rarlinux-3 ...
- Gnuradio 学习
8月份就把usrp买过来了,不过由于一直比较忙, 也没怎么弄. 这几天准备学习学习,暂时也不知道能干些啥.不管怎么样先按教程走一遍,熟悉熟悉设备也是好的吧. 首先去Ettus 下载了一个官方指导,一步 ...
- WinPcap编程(二)
0. 这一次具体讲抓包的两种方法. (建议)清除ARP表,最好自己写个批处理命令.快一点. 1.0 抓包步骤 步骤很简单:先打开适配器列表 --> 选择适配器 --> 通过遍历链表的方式到 ...
- 实验三:gdb跟踪调试内核从start_kernel到init进程启动
原创作品转载请注明出处<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 如果我写的不好或者有误的地方请留言 ...
- ES聚合实例
在es中需要根据app_categor进行聚合,JSON查询语句如下: { "query": { "bool": { "must": [ { ...
- Regularized Linear Regression with scikit-learn
Regularized Linear Regression with scikit-learn Earlier we covered Ordinary Least Squares regression ...
- spring-boot 测试
在线项目构建:http://start.spring.io/ 下载:bookpub.zip 导入Idea15.0.1 运行: y@y:bookpub$ ./gradlew clean bootRun ...
- 简单的猜数字(JAVA版)
按书上的样例来操作的. 不过,书上提到的BUG,我没有在看下一章时就解决了哈.. 从网上查找的删除数组元素的方法. 其实,将数据结构更改为ARRAYLIST,可能更简单.:) GameHelper.j ...