学习了许久的Python,我单独总结出了Python中比较常见的6种运算符,感觉略有不全,希望大伙可以一起讨论与研究Python!

一、算术运算符

减 -

乘 *

除 /

取余 %

取整 //

异号 -

不变号 +

取绝对值 abs(x)

转为整数 int(x)

转为浮点数 float(x)

复数 complex(re,im)

共轭复数 c.conjugate()

返回一个数值对(x//y,x%y) divmod(x,y)

x的y次幂(两种写法) x**y,pow(x,y)

二、比较运算符

小于(<),小于等于(<=),等于(==),大于(>),大于等于(>=),不等于(!=),is(判断两个标识符引用一个对象) ,is not(不是同一个对象)

1.八个比较运算符优先级相同

2.python允许链式比较 x<y<z,它相当于 x<y and y<z

3.复数不能用于比较大小,只能用于比较相等

三、逻辑运算符

x or y 短路运算符 (它只有第一个运算数为false才计算第二个运算数的值)

x and y 短路运算符 (它只有第一个运算数为True才进行第二个运算数的值)

not x not的优先级低(not a==b 相当于 not(a==b)),a = not b 是错误的

四、位运算符

python中的位运算符是把数字看作是二进制来进行计算的

& 按位与运算符:参数运算的两个值(二进制),如果两个相应为都为1,则改为的结果为 1,否则为0

| 按位或运算符:参与运算的两个值,只有对应位的两个数,有一个为1,结果为1

^ 按位异或运算符:对应位数数值不同为1,相同为0

~ 按位取反运算符:针对单个数,二进制格式,相应的位的数值取反,1变0,0变1

<< 左移动运算符:各二进制位左移若干位,高位丢弃,低位补0

>> 右移动运算符:各二进制位又移若干位

  1. >>> a = bin(20)
  2. >>> a
  3. '0b10100'
  4. >>> b = bin(30)
  5. >>> b
  6. '0b11110'

二进制数:默认8位,0b前缀标识,从地位到高位读取,从右到左写,不够的位数补0,直到读取8位为止

调用python二进制函数bin,0b代表二进制标识符,二进制数默认8位,则a,b对应的二进制数为:

a = 25 = 0001 1001

b = 62 = 0011 1110

a&b =24= 0001 1000

a|b =63 = 0011 1111

a^b = 39 = 0010 0111

~a = -26 = 1110 0110

负数:

源码:0001 1010

反码:1110 0101

补码:1110 0110

a<<2 = 100 = 0110 0100

a>>2 = 6= 0000 0110

  1. >>> bin(25)
  2. '0b11001'
  3. >>> bin(62)
  4. '0b111110'
  5. >>> 25&62
  6. 24
  7. >>> bin(24)
  8. '0b11000'
  9. >>> 25|62
  10. 63
  11. >>> bin(63)
  12. '0b111111'
  13. >>> 25^62
  14. 39
  15. >>> bin(39)
  16. '0b100111'
  17. >>> ~25
  18. -26
  19. >>> bin(-26)
  20. '-0b11010'
  21. >>> 25<<2
  22. 100
  23. >>> bin(100)
  24. '0b1100100'
  25. >>> 25>>2
  26. 6
  27. >>> bin(6)
  28. '0b110'

验证

  1. >>> eval('0b00011000')
  2. 24
  3. >>> eval('0b00111111')
  4. 63
  5. >>> eval('0b00100111')
  6. 39
  7. >>> eval('-0b00011010')
  8. -26
  9. >>> eval('0b01100100')
  10. 100
  11. >>> eval('0b00000110')
  12. 6

五、赋值运算符

= 简单的赋值

+= 加法赋值运算

-= 减法赋值运算

*= 减法赋值运算

/= 除法赋值运算

%= 取余法赋值运算

**= 幂赋值运算

//= 取整除赋值运算

六、成员运算符

python提供了成员运算符,测试一个元素是否在序列(squence)中

in 如果指定元素在序列中,返回True,否则返回False

not in 如果指定元素不在序列中,返回True,否则返回False

谢谢大伙观看!

Python的6种运算符(日记)的更多相关文章

  1. 在python中有多少种运算符?解释一下算术运算符

    在python中,我们有7种运算符:算术运算符.关系运算符.赋值运算符.逻辑运算符.位运算符.成员运算符.身份运算符 我们有7个算术运算符,能让我们对数值进行算术计算 1.加号(+),将两个值相加 2 ...

  2. python基础之七种运算符

    废话不多说,上节说的是数据类型,本篇讲讲数据运算. 在算式"1+2"中,"1"和"2"被称为操作数,"+"被称为运算符 ...

  3. [Python学习笔记1]Python语言基础 数学运算符 字符串 列表

    这个系列是我在学习Python语言的过程中记录的笔记,主要是一些知识点汇总,而非学习教程,可供有一定编程基础者参考.文中偏见和不足难以避免,仅供参考,欢迎批评指正. 本系列笔记主要参考文献是官网文档: ...

  4. 产品经理学Python:逻辑判断与运算符

    这是关于Python的第6篇文章,主要介绍下逻辑判断与运算符. (一) 逻辑判断: 如果要实现一个复杂的功能程序,逻辑判断必不可少.逻辑判断的最基本标准:布尔类型. 布尔类型只有两个值:True和Fa ...

  5. Python教程(2.3)——运算符和类型转换

    Python里有很多运算符(operator),这节就让我们来详细学一学. 注意:本文没有特别说明的地方,只考虑bool.int.float三种类型.例如"两边操作数类型相同时,得到的结果为 ...

  6. python学习笔记之运算符

    目录 前言 软件环境 身份运算符 算术运算符 比较运算符 位移运算符 自变运算符 位运算符 逻辑运算符 成员关系运算符 Python真值表 最后 前言 在前面的博文介绍了Python的数据结构之后,接 ...

  7. Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助

    Python第二天  变量  运算符与表达式  input()与raw_input()区别  字符编码  python转义符  字符串格式化  format函数字符串格式化  帮助 目录 Pychar ...

  8. Python web前端 06 运算符 循环

    Python web前端 06 运算符 循环 一.运算符 #JS六大数据类型 #number 数字 #string 字符串 #boolean 布尔型 #function 函数 #undefined 未 ...

  9. python基础--数据类型、运算符、流程控制

    原文地址:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143165862 ...

随机推荐

  1. 洛谷 P3338 [ZJOI2014]力

    题意简述 读入\(n\)个数\(q_i\) 设\(F_j = \sum\limits_{i<j}\frac{q_i\times q_j}{(i-j)^2 }-\sum\limits_{i> ...

  2. 使用pandoc简单教程

    使用pandoc作为过滤器 {#step-4-using-pandoc-as-a-filter} 类型 pandoc 并按Enter键.你应该看到光标就在那里,等着你输入一些东西.输入: Hello ...

  3. 【记忆化搜索】掷骰子 hpuoj

    B. 掷骰子 单点时限: 2.0 sec 内存限制: 512 MB 骰子,中国传统民间娱乐用来投掷的博具,早在战国时期就已经被发明. 现在给你 n 个骰子,求 n 个骰子掷出点数之和为 a 的概率是多 ...

  4. Django-用户-组-权限

    前言 RBAC(Role-Based Access Control,基于角色的访问控制)就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成“用户-角 ...

  5. ansible之数据提取与Juniper实例演示

    一.Ansible列表两种表达方式 基于YAML的列表 my_list: - a - b - c - d 基于Json格式的列表 {"my_list":[ "a" ...

  6. 《Java 8 in Action》Chapter 1:为什么要关心Java 8

    自1998年 JDK 1.0(Java 1.0) 发布以来,Java 已经受到了学生.项目经理和程序员等一大批活跃用户的欢迎.这一语言极富活力,不断被用在大大小小的项目里.从 Java 1.1(199 ...

  7. .net测试篇之测试神器Autofixture在几个复杂场景下的使用示例以及与Moq结合

    系列目录 为String指定一个值. 在第三节里我们讲了如何使用自定义配置加上一个自定义算法生成一个自定义字符串,然而有些时候我们仅仅是需要某个字段是有意义的,这个时候随便生成的字符串也满足不了我们的 ...

  8. SPP NET (Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition)

    1. https://www.cnblogs.com/gongxijun/p/7172134.html (SPP 原理) 2.https://www.cnblogs.com/chaofn/p/9305 ...

  9. [系列] go-gin-api 规划目录和参数验证(二)

    目录 概述 规划目录结构 模型绑定和验证 自定义验证器 制定 API 返回结构 源码地址 go-gin-api 系列文章 概述 首先同步下项目概况: 上篇文章分享了,使用 go modules 初始化 ...

  10. Python之流程控制——if...else...

    Python之流程控制--if...else... 一.流程控制 假如把程序比做走路,那我们到现在为止,一直走的都是直路,还没遇到过分岔口.当遇到分岔口时,你得判断哪条岔路是你要走的路,如果我们想让程 ...