(1)算数运算符:  + - * / // % **

(2)比较运算符:  > < >= <= == !=

(3)赋值运算符:  = += -= *= /= //= %= **=

(4)成员运算符:  in 和 not in (针对于容器型数据)

(5)身份运算符:  is 和 is not (检测两个数据在内存当中是否是同一个值)

(6)逻辑运算符:  and or not

(7)位运算符:    & | ~ ^ << >>

# 1. 算数运算符:  + - * / // (地板除) % **(幂运算)

var1 = 7

var2 = 4

# +

res = var1 + var2

print(res)

# -

res = var1 -var2

print(res)

# *

res = var1 * var2

print(res)

# / (结果是一个小数)

res = var1 / var2

res = 8 / 8

print(res)

# // (取整数) 两个数在进行地板除的时候,有一个数是小数,就在最后的结果上加.0

res = var1 // var2

res = 8 // 8

res = 28.7 // 5

print("<===>")

res = 28 // 5.3

print(res)

# %

res = var1 % var2

res = 99 % 7

# -1 + 7 = 6 (余数)

res = -99 % 7

# 1 + (-7) = -6 (余数)

res = 99 % -7

print(res)

# **   var1 * var1 * var1  7*7*7  **是所有运算符 优先级最高的一个

res = var1 ** 3

print(res)

# ###(2)比较运算符:  > < >= <= == !=

'''比较运算符只会产生2个结果  要么True 要么False'''

# >

var1 = 15

var2 = 18

res = var1 > var2

print(res)

# <

res = var1 < var2

print(res)

# >=  只要满足一个条件即为真

res = var1 >= 15

print(res)

# <=

res = var1 <= 15

print(res)

# == *****

res = var1 == var2

print(res)

# != *****

res = var1 != var2

print(res)

# ### 3.赋值运算符  = += -= *= /= //= %= **=

# = 所有运算符当中 等号的优先级最低

var1 = 9

var2 = 5

res = var1

# print(res)

# +=

# var1 += var2

'''var1 = var1 + var2'''

# print(var1)

# -=

# var1 -= var2

'''var1 = var1 - var2'''

# print(var1)

# *=

# var1 *= var2

'''var1 = var1 * var2'''

# print(var1)

# /=

# var1 /= var2

'''var1 = var1 / var2'''

# print(var1)

# //=

# var1 //= var2

'''var1 = var1 // var2'''

# print(var1)

# %=

# var1 %= var2

'''var1 = var1 % var2'''

# print(var1)

# **=

var1 **= var2

'''var1 = var1 ** var2'''

print(var1)

# ###4.成员运算符  in    not in 针对于容器类型数据

# str  字符串需要是一个连续的片段

strvar = "如果遇到你是一种错,我宁愿一错再错"

res = "你" in strvar

res = "遇到" not in strvar

res = "我一" in strvar

print(res)

# list tuple set

listvar = ["张胜男","张三","李四"]

res = "达到" in listvar

print(res)

tuplevar = "张三","李四","王五"

res = "王大" not in tuplevar

print(res)

setvar = {'王五','张三"'}

res =  "王五" in  setvar

print(res)

# dict  注意 : 判断的是键 不是值

dictvar = {"zdx":"王五","gss":"张三","mlh":"李四"}

res = "李四" in dictvar

res = "mlh" not in dictvar

print(res)

# ### 身份运算符  is  is not

"""

var1 = 56

var2 = 56

res = var1 == var2  (判断两个值是否相等)

res = var1 is var2  (判断两个值得地址是否相等)

"""

# Number

# int -5 ~ 正无穷

var1 = 56

var2 = 56

res = var1 is var2

print(res)

# float 非负数

var1 = -99

var2 = -99

print(var1 is not var2)

# bool

var1 = True

var2 = False

print(var1 is var2)

# complex

var1 = 5+6j

var2 = 5+6j

print(var1 is not var2)

# 容器类型数据  () 相同的字符串 剩下所有的容器类型数据地址都不一样

var1 = ()

var2 = ()

print(var1 is  var2)

var1 = "机"

var2 = "机"

print(var1 is not var2)

# ### 6. 逻辑运算符 (and or not)

# (1)and 逻辑与

'''全真则真,一假则假'''

res = True and True

res = False and True

res = False and False

res = True and False

print(res)

# (2)or 逻辑或

'''全假则假,一真则真'''

res = True or True

res = True or False

res = False or True

res = False or False

print(res)

# (3)not 逻辑非  相当于取反

res = not True

res = not False

print(res)

# (4)逻辑短路

'''

False and 布尔 在and左边如果时False 逻辑短路 右侧不执行

True or 布尔   在or左边如果是True  逻辑短路 右侧不执行

在开发当中 ,当成"开关"使用

# res = False and False

'''

False and  print(123) #逻辑短路

True or print(456)  #逻辑短路

True and print(789)

# res = print(456)

# print(res)

 

# 逻辑运算符的优先级

''' () > not > and > or '''

# res = 6 and 7

# res = True and  True

# print(res)

# res = 5 or 6 and 7

# res = 5 or True

# res = 5 or True

# (1)

res = 5 or 6 and 7

print(res)

# (2)

res = (5 or 6) and 7

print(res)

# (3)

res = not(5 or 6) and 7

print(res) # False

'''

5 or 6 => 5

not 5 and 7

False and 7

'''

# (4)

res = 3>1 or 4<5 and 6>9 or 8==10

# True or True and False or False

# True or False or False

# True or False

print(res)

# 数据类型的判断 isinstance

'''

isinstance(要判断的值,(数据类型1,数据类型2,数据类型3,.....))

最终的返回值要么是True 要么是False

int float bool complex str list set tuple dict

'''

var1 = 6

res = isinstance(var1,int)

print(res)

var2 = "你好"

# 只要类型元组里面含有这个数据类型,即为真

res = isinstance(var2,(set,list,tuple))

print(res)

 

# ### 7.位运算符 (& |  ^ << >> ~)

# 按位与 &

var1 = 19

var2 = 15

res = var1 & var2

print(res)

"""

000000010011

000000001111

000000000011

"""

# 按位或 |

res = var1 | var2

print(res)

'''

000000010011

000000001111

000000011111

'''

# 按位异或 ^ "如果两者不相同,返回真,两者相同返回假

res = var1 ^ var2

print(res)

'''

000000010011

000000001111

000000011100

'''

# <<  相当于 5 乘以 2的2次幂

res = 5 << 2

res = 4 << 3

print(res) # 20

"""

000000101

000010100

"""

# >>  相当于 5 除以 2的1次幂

res = 5 >> 1

print(res)

"""

0000101

0000010

"""

# ~ 按位非 (针对于补码来进行操作 ,连符号位都要改变) 公式 -(n+1)

res = ~19

print(res)

"""

000000000010011 (补码)

111111111101100 (按位非)

111111111101100  (给补码求原码)

100000000010011  (反码)

100000000010100  (原码)  => -20

"""

res = ~(-19)

print(res)

'''

100000000010011  (原码)

111111111101100  (反码)

111111111101101  (补码)

按位非操作的是补码

111111111101101  (补码)

000000000010010  (按位非得值)

000000000010010  (原码 == 反码 == 补码)

'''

"""

所有运算符的优先级:

(1) 小括号的优先级最高 ()     => (3+3)*5

(2)

一元运算符:同一时间操作一个数的 ( ~ , - ) -6

二元运算符: 同一时间操作二个数的

 

** 符号优先级最高

符号优先级最低

 

整体来说,一元运算符优先级大于二元运算符 , ** 除外

乘,除 > 加减

() > not > and > or

(<< >> ) > & > ^ > |

 

除此之外剩下的运算符参考以下:

算术运算符 > 位运算符 > 比较运算符 > 身份运算符 > 成员运算符 > 逻辑运算符

赋值运算符单独拿出来 , 用来把最后的结果进行赋值的

"""

"""

res = 5+5 << 6 // 3 is 40 and True

res = 5+5 << 2 is 40 and True

res = 10 << 2 is 40 and True

res = 40 is 40 and True

res = True and True

res = True

print(res)

"""

python小白——进阶之路——day3天-———运算符的更多相关文章

  1. python小白——进阶之路——day3天-———容器类型数据+Number类型强制类型转换

    -->Number 部分 int :     整型   浮点型 布尔类型  纯数字字符串 float:    整型   浮点型 布尔类型  纯数字字符串 complex:  整型   浮点型 布 ...

  2. python小白——进阶之路——day2天-———数据类型和Number类型和str字符串

    ### -python的六大标准数据类型(1)Number 数字类型(int float bool complex)(2)String 字符串类型(3)List 列表类型(4)Tuple 元组类型(5 ...

  3. python小白——进阶之路——day1天---认识python和变量、注释

    ###-python的认知 89年开发的语言,创始人范罗苏姆(Guido van Rossum),别称:龟叔(Guido) (1)版本: python2.x原码不规范,重复较多 python3x:原码 ...

  4. python小白——进阶之路——day4天-———流程控制while if循环

    # ### 代码块: 以冒号作为开始,用缩进来划分作用域,这个整体叫做代码块 if 5 == 5: print(1) print(2) # 注意点: 要么全部使用4个空格,要么全部使用1个缩进 ,这样 ...

  5. python小白——进阶之路——day2天-———变量的缓存机制+自动类型转换

    # ###同一文件,变量的缓存机制 ''' -->Number 部分 1.对于整型而言,-5~正无穷范围内的相同值 id一致 2.对于浮点数而言,非负数范围内的相同值 id一致 3.布尔值而言, ...

  6. python小白——进阶之路——day2天-———容器类型数据(list,set ,tuple,dict,str)

    #容器类型数据 : list tuple # ###列表的特性:可获取,可修改,有序 # 声明一个空列表 listvar = [] print(listvar,type(listvar)) # (1) ...

  7. 小白进阶之路-python基本运算符

    1.算数运算符(+.-.*./.%.**(幂 二次方.三次方).//(地板除,返回商的整数部分) 2.比较运算符(==.!=.<>(不等于).>.<.>=.<=) ...

  8. Python小白学习之路(二)—【Pycharm安装与配置】【创建项目】【运算符】【数据类型】

    写在前面: 第二天的学习,感觉比昨天学习相对轻松一些,但是对于我这个编程语言功底很弱的人来说,还是稍稍微有些.....哈尔滨的天气一天天冷了下来,还飘着小雨,不过还是挺有意境的.充实而又忙碌的生活,让 ...

  9. 小白进阶之路—python脚本(1)判断是否是一个目录

    #!/usr/bin/env python# -*- coding: utf-8 -*-import os   dir = "/var/www/html/EnjoyWeekend/" ...

随机推荐

  1. 简单的SQL注入之3

    Topic Link http://ctf5.shiyanbar.com/web/index_3.php 1)测试正确值submit:1 测试目标和对象要明确: 2)单引号测试(判断存在字符型注入&a ...

  2. 痞子衡嵌入式:一表全搜罗常见短距离无线通信协议(Wi-Fi/Bluetooth/ZigBee/Thread...)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是常见短距离无线通信协议. 短距离无线通信是物联网的基础,随着物联网IoT的火热发展,各种短距离无线通信协议也是层出不穷,这些协议标准各有 ...

  3. Perl进程:僵尸进程和孤儿进程

    概念 僵尸进程:当子进程退出时,父进程还没有(使用wait或waitpid)接收其退出状态时,子进程就成了僵尸进程 孤儿进程:当子进程还在运行时,父进程先退出了,子进程就会成为孤儿进程被pid=1的i ...

  4. C#简单委托示例——让你一看就会的demo

    委托 1. 什么是委托? 委托就是具有相同签名和返回值类型的有序方法列表 它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递 是一种引用类型 方法的列表称为调用列表 当委托被调用时,它调 ...

  5. Camera测试之Color & Lens shading Test

    测试目的:测试摄像头成像的均匀性 测试主要设备:均匀光源(DNP灯箱),色温照度计 测试环境:将灯箱光源调至600±100lux 测试注意事项:保证均匀的光源 测试原理: 造成摄像头成像不均匀的原因有 ...

  6. sql server 2008R2 导出insert 语句(转载)

    转载来源: https://blog.csdn.net/zengcong2013/article/details/78648988. sql server 2008R2数据库导出表里所有数据成inse ...

  7. 【.Net Core】获取绝对路径、相对路径

    一.绝对路径 1.获取应用程序运行当前目录Directory.GetCurrentDirectory(). System.IO命名空间中存在Directory类,提供了获取应用程序运行当前目录的静态方 ...

  8. ios端的Safari浏览器中,输入框加入readonly之后,点击还能获取焦点的解决办法。

    事情的起因是,新增一个需求,原来的输入框点击不要出现系统自带的键盘,出现我们模拟的键盘.如果是一次性开发的话, 我肯定把这个输入框写成一个div或者其他的元素,然后点击之后出现我们的模拟键盘,这样就不 ...

  9. javascript常用的41个经典技巧

    1. 将彻底屏蔽鼠标右键 <table border oncontextmenu=return(false)><td>no</table> 可用于Table 2. ...

  10. Catalan卡特兰数入门

    简介 卡特兰数是组合数学中的一种常见数列 它的前几项为: 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, ...